неділю, 19 січня 2014 р.

Joomla SEF

Дружественный путь к статье в Джумле без номера статьи.
Оказалось, что этого достичь довольно просто. В вер. 3.2.1
  1. переименовать существующий файл htaccess.txt в .htaccess,
  2. включить "дружественные пути" в настройках джумлы,
  3. немножко подправить файл components/com_content/router.php:

в районе 27-й и 260 строк
$advanced = $params->get('sef_advanced_link', 0);

заменить на ("1" в конце)
$advanced = $params->get('sef_advanced_link', 1);

в районе 282-287 строк блок
if (strpos($segments[0], ':') === false) {
    $vars['view'] = 'article';
    $vars['id'] = (int)$segments[0];
    return $vars;
}
закомментировать
/*
if (strpos($segments[0], ':') === false) {
    $vars['view'] = 'article';
    $vars['id'] = (int)$segments[0];
    return $vars;
}
*/
В файл administrator\components\com_content\config.xml добавить секцию (желательно вверху)
<field name="sef_advanced_link"
    type="radio"
    default="0"
    label="Sef Advanced Mode"
    description="Remove ItemID from Content URL?">
        <option    value="0">JNO</option>
        <option    value="1">JYES</option>
</field>
Затем в админке зайти в "Параметры менеджера статтей" и "включить" добавленный "Sef Advanced Mode".

И всё.