Подавляющее большинство шаблонов для CMS Joomla не seo оптимизированы, что сказывается на ранжировании сайта.
К примеру можно встретить несколько заголовков H1 на странице, а также заголовок материала обрамлённый H2 вместо H1.
Настройка и SEO оптимизация требует некоторых усилий.
! СДЕЛАЙТЕ РЕЗЕРВНУЮ КОПИЮ ФАЙЛОВ САЙТА И БД
1. Переходим в панель управления сайтом CMS Joomla. Далее открываем в верхнем меню Материалы - Менеджер категорий. Выбираем справа Настройки и выбираем вкладку Категория.
Заголовок категории выставляем Скрыть
Описание категории выставляем Показать
2. Возвращаемся к меню Материалы: Менеджер категорий и попробуем настроить Заголовок пункта меню и категории, но сделать то нужно так что бы на странице материала не дублировался H1 от заголовка категории и заголовка материала, который также должен иметь H1.
Для этого в Менеджере категорий выбираем нужную категрию, к примеру Новости компаний и в Описание вставляем заголовок <h1>Последние новости компаний и события</h1>.
Данную процедуру нужно проделать со всеми категориями.
3. Возвращаемся в меню и переходим к следующему этапу. Для этого открываем Менеджер меню и выбираем тип меню к которому привязана категория. Выбираем соответствующий пункт меню, для примера Новости компаний.
Открываем вкладку Заголовок Категории и проверяем, что бы всё стояло По умолчанию, поскольку в таком случае настройки будут подтягиваться из Настроек категорий, про которые мы писали в п.1. Для уверенности можно указать вручную:
Заголовок категории - Скрыть
Описание категории - Показать
Также следует перейти во вкладку Параметры отображения страницы и напротив Показывать заголовок страницы выставляем нет. Данная настройка исключит дубли H1.
Также многие SEO рекомендуют отключать кликабельность заголовков. Сделать это можно либо в Настройках менеджера категорий во вкладке Материалы выставив Заголовок, как ссылка в заначение Нет - тогда в настройках меню во вкладке Параметры отображения материала необходимо указать Заголовок, как ссылка в значение По умолчанию. Если там не настроено можно просто в кажном пункте меню выставить во вкладке Параметры отображения материала необходимо указать Заголовок, как ссылка в значение Нет.
4. Очень часто производители шаблонов указывают название сайта в H1. Обычно такой тег находится возле описания логотипа сайта и отражается дя всех страниц сайта, при определенном случае отражая вторично и троично тег H1. Для исключения подобной ситуации необходимо убрать тег из header’а сайта.
Что бы быть более точным и узнать о наличие тега H1 можно проверить кликнув правой кнопкой мыши по сайту и выбрать из контекстного меню Просмотр кода страницы. C помощью Ctrl+А найти <h1. Если такой тег будет найден в наименовании сайта.
Существует несколько способов удаления этого тега:
- необходимо найти файл index.php, который обычно располагается по адресу www.сайт/templates/шаблон
- в некоторых случаях он может содержаться в www.сайт/templates/шаблон/blocks/header.php
- также может находиться в настройках самого шаблона.
Найти в этом файле
<h1 class="logo"><a href="/index.php" title="<?php echo $siteName; ?>"><span></span></a></h1>
<?php else:
$logoText = (trim($this->getParam('logoText'))=='') ? $siteName : JText::_(trim($this->getParam('logoText')));
$sloganText = JText::_(trim($this->getParam('sloganText'))); ?>
<div class="logo-text"><p><a href="/index.php" title="<?php echo $siteName; ?>"><span><?php echo $logoText; ?></span></a></p>
<h1 class="site-slogan"><?php echo $sloganText;?></h1>
</div>
Заменить на нечто (в связи с тем, что может отличаться)
<p class="logo">
<a href="/index.php" title="<?php echo $siteName; ?>"><span></span></a>
</p>
<?php else:
$logoText = (trim($this->getParam('logoText'))=='') ? $siteName : JText::_(trim($this->getParam('logoText')));
$sloganText = JText::_(trim($this->getParam('sloganText'))); ?>
<div class="logo-text">
<p><a href="/index.php" title="<?php echo $siteName; ?>"><span><?php echo $logoText; ?></span></a></p>
<p class="site-slogan"><?php echo $sloganText;?></p>
</div>
Название сайта в шапке может начать выводиться маленькими буквами, но это исправляется в стилях CSS по адресу: www.cайт/templates/css/template.css или по другому адресу, который можно узнать с помощью функции контекстного меню браузера "Просмотр кода элемента" в Google Ghrome, Исследовать элемент в FireFox.
Для восстановления нормального отображения поменять стили для примера:
Поменять h1.stal-logo-name на p.stal-logo-name
Поменять h1.logo a на стало p.logo a
5. Также следует заменить h2 на h1 в файле default.php по адресу www.сайт/templates/шаблон/html/com_content/article/default.php
Находим
<div class="item-page<?php echo $this->pageclass_sfx?>">
<?php if ($this->params->get('show_page_heading')) : ?>
<h2>
<?php echo $this->escape($this->params->get('page_heading')); ?>
</h2>
Меняем на
<div class="item-page<?php echo $this->pageclass_sfx?>">
<?php if ($this->params->get('show_page_heading')) : ?>
<h1>
<?php echo $this->escape($this->params->get('page_heading')); ?>
</h1>
В результате этих манипуляций по оптимизации заголовков H1 и H2 в Joomla мы должны:
- удалить тег H1 из названия сайта, который прописывается на каждой странице;
- указать тег H1 для заголовков категории, который не будет прописываться на странице с материалом;
- заменить тег H2 на H1 в заголовке названия материала.