Мною была поставлена задача в Joomla в теге title сделать из такого вида:
Crysis 3 - 2013
Такой вид:
Скачать игру Crysis 3 - 2013 бесплатно
То есть перед название материала вставить фразу Скачать игру, а после вставить слово бесплатно.
В стандартной Joomla нет такой возможности, а в компоненте sh404sef есть похожая функция где можно прописать которую фразу вставлять до и которую после. Но есть одно но, эти фразы выводились на всех страницах кроме главной. а мне нужно было только в материалах K2.
После долгих мучений я все таки написал код который может сделать все так как нужно!
Сначала заходим в папку: /public_html/components/com_sh404sef
Открываем файл: shPageRewrite.php
Ищем там:
Код
if (!empty($shCustomTitleTag)) {
$prepend = $isHome ? '' : $sefConfig->prependToPageTitle;
$append = $isHome ? '' : $sefConfig->appendToPageTitle;
$shPageInfo->pageTitle = htmlspecialchars( shCleanUpTitle($prepend . $shCustomTitleTag . $append), ENT_COMPAT, 'UTF-8');
$buffer = ShlSystem_Strings::pr('/\<\s*title\s*\>.*\<\s*\/title\s*\>/isuU', '<title>' . $shPageInfo->pageTitle .'</title>', $buffer);
$buffer = ShlSystem_Strings::pr( '/\<\s*meta\s+name\s*=\s*"title.*\/\>/isuU', '', $buffer);
}
И заменяем на:
Код
if (!empty($shCustomTitleTag)) {
$prepend = $isHome ? '' : $sefConfig->prependToPageTitle;
$append = $isHome ? '' : $sefConfig->appendToPageTitle;
if (isset($_GET['view']) && $_GET['view'] == 'item') {
$shPageInfo->pageTitle = htmlspecialchars( shCleanUpTitle($prepend . $shCustomTitleTag . $append), ENT_COMPAT, 'UTF-8');
}
else {
$shPageInfo->pageTitle = htmlspecialchars( shCleanUpTitle($shCustomTitleTag), ENT_COMPAT, 'UTF-8');
}
$buffer = ShlSystem_Strings::pr('/\<\s*title\s*\>.*\<\s*\/title\s*\>/isuU', '<title>' . $shPageInfo->pageTitle .'</title>', $buffer);
$buffer = ShlSystem_Strings::pr( '/\<\s*meta\s+name\s*=\s*"title.*\/\>/isuU', '', $buffer);
}
Автор: Виктор Рець