Этот хук меняет адреса тем с формата
viewtopic.php?f=2&t=1
на viewtopic.php?t=1
(убирает идентификатор форума) и заодно добавляет тег Canonical для всех полезных страниц конференции. Отсутствие идентификатора форума в адресах тем гарантирует, что при перемещении из одного раздела в другой не будут плодиться дубли страниц.Если кому-то нужен отдельно хук для создания канонического тега (без изменения адресов тем), то вот он: Установка очень проста:
1) Распаковать и скопировать нужный вам хук в папку
includes/hooks
2) Очистить кеш на главной странице администраторского раздела форума.
Вместе использовать эти хуки не нужно.
Важные замечания по поводу установки hook_mini_seo:
Не забудьте отредактировать robots.txt для соответствия новому формату ссылок. Если в вашем robots присутствует правило
Disallow: /viewtopic.php?t=*
, то уберите его и замените на Disallow: /viewtopic.php?f=*
. Подробнее о robots и правилах его составления читайте в соответствующей теме: http://www.phpbb-work.ru/robots-txt-t55.htmlЕсли ваш форум не новый и уже был проиндексирован поисковиками, то вам также будет нужно сделать перенаправление (редирект) со старых адресов на новые, чтобы не потерять вес страниц. В этом случае не нужно добавлять правило
Disallow: /viewtopic.php?f=*
в роботс. Один из вариантов сделать редирект со старых страниц - добавить в .htaccess форума следующий код:Код: Выделить всё
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^f=([0-9]+)&t=([0-9]+)(.*)$ [NC]
RewriteRule ^viewtopic\.php$ /forum/viewtopic.php?t=%2%3 [L,R=301]
RewriteBase /
на относительный путь к вашему форуму от корневой папки - например, RewriteBase /forum/
для папки с именем forum. Если этот вариант не сработает, то поищите решение в интернете, т.к. по серверным редиректам я не ас, для разных конфигураций сервера они могут отличаться.