Joomla 2.5 / 3 мета теги description
- Подробности
- Категория: Joomla 2.5 - 3
- Обновлено 16.09.2018
Поисковые роботы считают важным наличие на странице мета тега description, например
<meta name="description" content="Кузовной ремонт в осенне-зимний период" />
Если вы забыли прописать значение этого параметра в админке, то движок Джумлы не выведет этот тег на страницу, так как значение пустое и выводить нечего.
Чтобы этот тег имел осмысленное значение и всегда выводился в коде страницы, можно прописать заглушку.
Этой заглушкой логичнее всего сделать сам заголовок материала или заголовок категории. Для этого мы допилим код генератора мета тегов Джумлы.
Joomla 2.5 Открываем редактором файл
/libraries/joomla/document/html/renderer/head.php
И добавляем альтернативу для условия IF метатега description, которое начинается со строки 90:
if ($documentDescription)
{
$buffer .= $tab . '<meta name="description" content="' . htmlspecialchars($documentDescription) . '" />' . $lnEnd;
} else {
$buffer .= $tab . '<meta name="description" content="' . htmlspecialchars($document->getTitle(), ENT_COMPAT, 'UTF-8') . '" />' . $lnEnd;
}
Для Joomla-3 нужно исправить файл
/libraries/src/Document/Renderer/Html/HeadRenderer.php
В нем код немного отличается от 2.5, строка 119
if ($documentDescription)
{
$buffer .= $tab . '<meta name="description" content="' . htmlspecialchars($documentDescription, ENT_COMPAT, 'UTF-8') . '" />' . $lnEnd;
} else {
$buffer .= $tab . '<meta name="description" content="' . htmlspecialchars($document->getTitle(), ENT_COMPAT, 'UTF-8') . '" />' . $lnEnd;
}
Такая доработка Joomla обеспечит наличие мета тега description на ВСЕХ страницах сайта. Причем это работает для всех установленных компонентов, включая Vittuemart, Zoo и пр.