Зачастую по разным, порой не выявленным причинам тайтлы страниц сайта на Joomla приобретают не вполне логичный вид. А именно на главной в тайтле только название сайта, а на остальных страницах только название страницы.
Решение.
Во-первых будем решать проблему редактируя только код шаблона сайта.
А именно поместим в блок head код:
<?php $document = & JFactory::getDocument(); $config = & JFactory::getConfig(); $curtitle = $document->title.' - '.$config->getValue('sitename'); $curtitle = html_entity_decode($curtitle,ENT_QUOTES, 'utf-8'); $document->setTitle( $curtitle ); ?>
Но как оказывается это решение на 99% так как на главной странице тайтл принимает вид: Название сайта - Название сайта.
Иправляем с помощью условий публикации модулей в Joomla:
<?php if(!$tmpTools->isFrontPage()) : $document = & JFactory::getDocument(); $config = & JFactory::getConfig(); $curtitle = $document->title.' - '.$config->getValue('sitename'); $curtitle = html_entity_decode($curtitle,ENT_QUOTES, 'utf-8'); $document->setTitle( $curtitle ); endif; ?>
Важное уточнение:
В условии на главную страницу используется функция isFrontPage(), которая, например, входит в составт стандартного шаблона JA_PURITY и представляет из себя следующее:
function isFrontPage(){ return (JRequest::getCmd( 'view' ) == 'frontpage') ; }
Поэтому проверять главную страницу в ее отсутсвии можно так:
<?php if(JRequest::getCmd( 'view' ) != 'frontpage') { ... } ?>
Теперь хак тайтла будет срабатывать на всех страницах кроме главной.
Также следует обратить внимание на настройку "Заголовок страницы" системных настроек главного пункта меню, текст в этом поле будет $document->title для главной страницы.
Также эту задачу можно решить без вмешательства в какой-либо код, а именно с помощью плагина . В нем вы сможете выбрать символ, используемый в качестве разделителя и порядок следования заголовков.