Этот хук меняет адреса тем с формата
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 и правилах его составления читайте в соответствующей теме: robots.txt для форума phpbbЕсли ваш форум не новый и уже был проиндексирован поисковиками, то вам также будет нужно сделать перенаправление (редирект) со старых адресов на новые, чтобы не потерять вес страниц. В этом случае не нужно добавлять правило
Disallow: /viewtopic.php?f=*
в роботс. Один из вариантов сделать редирект со старых страниц - добавить в .htaccess форума следующий код:Код: Выделить всё
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} (.*)f=([0-9]+)&t=(.+) [NC]
RewriteRule ^viewtopic\.php$ viewtopic.php?%1t=%3 [R=301]
Если форум находится не в корневой папке домена, а в подкаталоге, то обычно бывает достаточно изменить
RewriteBase /
на относительный путь к вашему форуму от корневой папки - например, RewriteBase /forum/
для папки с именем forum. Если этот вариант не сработает, то поищите решение в интернете, т.к. по серверным редиректам я не ас, для разных конфигураций сервера они могут отличаться.