Удалить ID материала из ссылок в Joomla 2.5 и Joomla 3.x

Тема в разделе "Joomla", создана пользователем Delight, 20 фев 2015.

  1. Delight

    Delight

    Регистрация:
    23 июл 2013
    Сообщения:
    52
    Симпатии:
    3
    Добавляем в файле: administrator/components/com_content/config.xml после любого закрытого тега </field> строки :
    Код:
    <field name="sef_advanced_link"
    type="radio"
    default="1"
    label="SEF: Remove ID?"
    description="Remove ID?">
    <option value="0">JNO</option>
    <option value="1">JYES</option>
    </field>
    Получаем возможность включать и исключать ID из ссылок прямо из административной панели в менеджере материалов в пункте "Настройки".

    В файле /components/com_content/router.php найти строку:
    Код:
    // then we assume it is a category. If they don't we assume it is an article
    if ($count === 1)
    заменяем на:
    Код:
    // then we assume it is a category. If they don't we assume it is an article
    if ($count === 1 && !$advanced) 
    Находим строку:
    Код:
    ->where($db->quoteName('alias'). ' = ' . $db->quote($db->quote($segment)));
    заменяем:
    Код:
    ->where($db->quoteName('alias'). ' = ' . $db->quote($segment) );
    Важно, при обнолении J! этот файл будет изменен.

    Как дополнение, можно еще отредактировать файл router.php, лежащего по адресу components/com_content/router.php
    Находим:
    Код:
    if ($count == 1) {
    и заменяем:
    Код:
    if ($count == 1 && !$advanced) {
     
  2. Зараки

    Зараки

    Регистрация:
    10 фев 2015
    Сообщения:
    29
    Симпатии:
    3
    Насколько я знаю все это убирается стандартными средствами, прямо из джумлы, включаем ЧПУ и перенаправление.