A- A A+
Убираем ID материалов из ссылок сайтов на Joomla!

Если материал сайта не привязан к конкретному пункту меню, в адресной строке появляется числовой идентификатор (ID) материала. С этим можно жить, но есть несложный способ сделать ссылки симпатичнее.

Зачем ID в адресах страниц?

В Joomla! все материалы, категории, плагины, модули и прочее имеют свой числовой номер. Эти идентификаторы делают ссылки на сайте уникальными. В частности, не позволяют иметь две статьи с одним и тем же адресом. Все правильно, только в ссылках присутствуют посторонние цифры, никак не связанные с названием материала.

Адрес страницы сайта с ID

Как убрать?

Убрать ID можно с помощью отдельных расширений, в частности sh404SEF. С настройкой данного компонента Вы можете ознакомиться в рамках курса "Joomla! 2.5 - современный сайт за 1 день".

Также, возможно убрать идентификаторы путем внесения изменений в один из файлов сайта, что и предлагается в данном уроке. Этот способ проверен на нескольких сайтов под управлением Joomla! 2.5. В случае с Joomla! 3.x, рекомендуем решить данный вопрос с помощью упомянутого компонента sh404SEF.

Шаг 1. Находим нужный файл

Необходимый для правки файл - router.php находится в корневом каталоге сайта по адресу - components/com_content/

Местонахождение файла router.php

Шаг 2. Первая правка

Расположение нужного кода в файле router.php может в разных шаблонах незначительно изменяться.

В нашем случае номер первой строка - 27:

$advanced = $params->get('sef_advanced_link', 0);

Изменяем в данной строке цифру 0 на 1.

Первая правка файла

Шаг 3. Вторая правка

Ниже находится строка под номером - 208:

$advanced = $params->get('sef_advanced_link', 0);

Аналогично заменяем цифру 0 на 1.

Вторая правка файла

Шаг 4. Третья правка

Наконец строка номер 228:

if (strpos($segments[0], ':') === false) {
$vars['view'] = 'article';
$vars['id'] = (int)$segments[0];
return $vars;
}

Перед первой строкой ставим /*, после последней фигурной скобки - */. Таким образом, мы закомментировали код, закрыв его от чтения. Или можно просто удалить его.

Третья правка файла

Вот и всё. Перезагружайте сайт в окне браузера и получайте ссылки без дополнительных цифр.

Не забывайте!

После каждого обновления Joomla, перезаписываются системные файлы, в том числе - router.php. Поэтому, обновившись, вносите указанные три правки в рассмотренный файл.

Ничего не поделаешь, красота требует жертв.

 

Добавить комментарий

Защитный код Обновить

Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

МОЙ TELEGRAM-КАНАЛ

ПОДПИСАТЬСЯ!


Перенос на хостинг

Перенос на хостинг

Бесплатный видео-курс по переносу готового сайта на одну из лучших хостинг-площадок РУнета.

Смотреть (бесплатно)

Бессмертный сайт

Бессмертный сайт

2 урока, 16 минут, и Ваш сайт - БЕССМЕРТНЫЙ!

Узнать подробности!