Про оптимизацию Title я уже писал, поэтому начнём работу сразу с H1, заодно выполнив отладку вывода H2 в блоге категории на примере Joomla 1.7 (всё будет понятно и по другим версиям, в частности я аналогичным образом решил проблему в Joomla 1.5.22).
Логотип в H1
Если движок ещё вообще не подвергался манипуляциям, то, скорее всего в шаблоне название сайта в логотипе выводится также в H1, и от этого избавляемся в первую очередь. Через ftp-соединение заходим на хостинг в файл index.php активного шаблона в блоке
<div class="logo">
<h1 class="logo-name"><a href="/<?php echo $baseUrl; ?>/">YourSite.com</a></h1>
<div class="logo-text">Slogan Text</div>
</div>
заменяем H1 на «p». Теперь в шапке сайта название не будет выводиться одинаковым главным подзаголовкам на всех страницах, ведь, согласитесь, видеть два разнонаправленных H плохо, останется только подкорректировать стили CSS для красивого визуально отображения названия сайта в шапке.
Заголовки в статьях
Теперь оптимизация Joomla 1.7 переходит в стадию вывода заголовка H1 в статьях автоматом (иначе придётся в каждой статье прописывать его вручную). Для этого идём на хостинге по пути, указанному на рисунке 1 и открываем редактором файл default.php. Здесь ищем код, указанный на рисунке 2 и обрамляем его в теги H1, что указывает на необходимость автоматического вывода основного Title в виде заголовка на странице материала. Тут же можно и убрать вывод заголовка как ссылки внутри страницы, но об этом после.
Код для правки
Теперь у нас получается, что основной Title (тот, который до разделителя на этом блоге) автоматом дублируется в h1 и нам осталось только сделать так, чтобы в анонсах категорий блога h1 в заголовке трансформировалось в H2. Для этого в Joomla 1.5 редактируем файлы, которые показаны на рисунке 3, а в версии 1,7 то же самое проделывается с файлом папки
featured/tmpl/default_item.php
В этих файлах находим код
<?php if ($this->item->params->get('link_titles') && $this->item->readmore_link != '') : ?>
<a href="/<?php echo $this->item->readmore_link; ?>" class="contentpagetitle<?php echo $this->item->params->
get( 'pageclass_sfx' ); ?>">
<?php echo $this->escape($this->item->title); ?></a>
<?php else : ?>
<?php echo $this->escape($this->item->title); ?>
<?php endif; ?>
И заключаем его в H2.
В итоге мы добились того что в шапке у нас нет H1 в названии сайта, на странице материала главный заголовок выводится автоматом на основе Title, в категориях блога все анонсы отображаются в коде, как подзаголовки второго уровня H2. Это делают структуру страницы понятной для ботов, и даст определённый бонус при ранжировании web-документов.