Итак, была задача (поскольку поле кейвордс почти ни на что уже не влияет - мучаем его...):
- для материалов: если заполнено поле кейвордс - выводить его в тайтл (для того чтоб тайтл отличать, при необходимости, от заголовка материала)
- то же для секций и категорий
- вывод тайтлов в виде: дополнительное название (материал, категория, товар) потом название сайта (на главной - название сайта первым полюбому - не нужно поисковику слово "Главная")
- в виртумарте: название товара/категории - в тайтл + в кейворд; краткое описание - в дескрипшен
Вот так легко и просто теперь можем управлять метами (Joomla! 1.0.11.1RE)
ЗЫ понимая, что уже обсуждалось, выложил собственное лекарство в одном флаконе. Без претензий на истину в последней инстанции (не флеймите)!!!
--------------------------------
components/com_content/content.php
function showItem()
примерно 1510 стр.
$mainframe->setPageTitle( $row->title );
на
$mainframe->setPageTitle( $row->title, $params, $row );
----------------------------------------------
includes/joomla.php
function setPageTitle( $title=null , $pageparams=null, $page = null ) {
global $option;
if (@$GLOBALS['mosConfig_pagetitles']) {
$title = trim( htmlspecialchars( $title ) );
$title = stripslashes( $title );
$pageownname = null;
if($page->metakey)
$this->_head['title'] = $page->metakey .' - '.$GLOBALS['mosConfig_sitename'];
else
$this->_head['title'] = $title ? $title.' - '.$GLOBALS['mosConfig_sitename'] : $GLOBALS['mosConfig_sitename'];
if($option == 'com_frontpage'){
$this->_head['title'] = $title ? $GLOBALS['mosConfig_sitename'].' - '.$title : $GLOBALS['mosConfig_sitename'];
}
}
}
------------------------------------------------
includes/frontend.php
В функции mosShowHead()
вместо
$mainframe->appendMetaTag( 'description', $mosConfig_MetaDesc );
$mainframe->appendMetaTag( 'keywords', $mosConfig_MetaKeys );
добавляем
$de = -1;
$ke = -1;
$n = count( $mainframe->_head['meta'] );
for ($i = 0; $i < $n; $i++) {
if ($mainframe->_head['meta'][$i][0] == "description")
$de = $i;
if ($mainframe->_head['meta'][$i][0] == "keywords")
$ke = $i;
}
if(!$mainframe->_head['meta'][$de][1] || $mainframe->_head['meta'][$de][1]=="" || $de < 0)
$mainframe->appendMetaTag( 'description', $mosConfig_MetaDesc );
if(!$mainframe->_head['meta'][$ke][1] || $mainframe->_head['meta'][$ke][1]=="" || $ke < 0)
$mainframe->appendMetaTag( 'keywords', $mosConfig_MetaKeys );
$mainframe->addMetaTag( 'Generator', $_VERSION->PRODUCT . ' - ' . $_VERSION->COPYRIGHT);
$mainframe->addMetaTag( 'robots', 'index, follow' );
----------------------------------------------administrator/components/com_virtuemart/html/shop.browse.php
$temp = explode (chr(10), strip_tags($desc));
$temp2 ="";
for ($i=0; $i<count($temp); $i++)
$temp2 .= trim($temp[$i]);
$mainframe->addMetaTag( "description", $temp2);
$mainframe->addMetaTag( "keywords", strip_tags($ps_product_category->get_name($category_id,1)));
--------------------------------------------------administrator/components/com_virtuemart/html/shop.product_details.php
$mainframe->addMetaTag( "description", strip_tags( $db_product->f("product_s_desc")));
$mainframe->addMetaTag( "keywords", strip_tags( $db_product->f("product_name")));
--------------------------------------------------
а также прилагаю всё вышеизложенное для скачивания
[вложение удалено Администратором]