Изначально заголовок (title) страниц на форуме PunBB выглядит очень некрасиво. Во-первых, создатели зачем-то запихнули в него слово «Страница», которое добавляется в каждый title топика. Во-вторых, все тире между частями тайтла отображаются как —. В-третьих, title просто переполнен лишней смысловой нагрузкой, включающей названия и темы, и раздела, и форума.
При стандартных настройках title темы PunBB выглядит так:
Название темы (Страница 1) — Название раздела — Название форума
В настройках форума нет возможности изменить отображение title, однако его можно изменить, если внедриться в код CMS. Самый просто способ сделать это – установить на форум расширение AnyCode Tool, которое позволяет добавлять в код PunBB хуки непосредственно через админ-панель.
Так чтобы убрать из TITLE PunBB слово страница, нужно добавить следующий хук:
идентификатор fn_generate_crumbs_end,
код
$crumbs = str_replace('(Страница 1)', '', $crumbs);
Опять же, используя расширение AnyCode Tool, добавляем в PunBB хук:
идентификатор hd_head,
код
if (FORUM_PAGE == 'viewtopic') {
$forum_head['title'] = '<title>'.forum_htmlencode($cur_topic['subject']).'</title>';
}
В этом случае в заголовке будет отображаться только название темы.
Можно чуть-чуть изменить код и добавить номер страницы, чтобы сделать каждый TITLE уникальным:
$forum_head['title'] = '<title>'.forum_htmlencode($cur_topic['subject']).' - '.$forum_page['page'].'</title>';
Или добавить ключевые слова для продвижения по ним:
$forum_head['title'] = '<title>'.forum_htmlencode($cur_topic['subject']).' SEO форум о продвижении '.$forum_page['page'].'</title>';
Также можно добавить в код условие, например, для работы только с одним разделом форума:
if ((FORUM_PAGE == 'viewtopic') && ($cur_topic['forum_id'] == 9)) {
$forum_head['title'] = '<title>'.forum_htmlencode($cur_topic['subject']).' SEO форум о продвижении '.$forum_page['page'].'</title>';
}
Или, если вы хотите изменить заголовок только первой страницы темы, а остальные оставить без изменений условие должно быть следующим:
if ((FORUM_PAGE == 'viewtopic') && ($forum_page['page'] == 1))
К идентификатору fn_generate_crumbs_end добавляем код
if (FORUM_PAGE === 'viewtopic') {
$crumbs = str_replace(($lang_common['Title separator'].$forum_page['crumbs'][1][0]), '', $crumbs);}
Использование хуков является более удобным, нежели правка PHP-файлов форума, так как при обновлении PunBB вам не придется снова прописывать внесенные изменения (называемые обычно модами или модификациями) вручную. Однако если хуков будет много, движок будет заметно тормозить, так что устанавливать ли вам модификации или расширения-хуки, решать вам.