Итак, приступим к оптимизации ссылок навигации Joomla
Вот какое безобразие было до SEO-оптимизации ссылок Joomla:

За формирование вышеуказанных ссылок отвечает плагин «Указатель статей» (некорректный перевод, правильнее будет «Навигация между статьями», - прим. моё). Нам нужен будет файл /plugins/content/pagenavigation.php. Сделаем резервную копию этого файла - всегда лучше перестраховаться. Затем откроем pagenavigation.php и начнем править. По ходу буду пояснять, что меняет изменение кода плагина навигации.
Сразу хочу предупредить - номера строк в вашем файле могут отличаться. У меня указано строка в моей версии Joomla 1.5.18.
1. В 109 строке меняем
$query = 'SELECT a.id,'
на
$query = 'SELECT a.id,a.title,'
Добавили извлечение заголовков статей
2. Перед строкой 153$row->prev = JRoute::_(ContentHelperRoute::getArticleRoute($row->prev->slug, $row->prev->catslug));
добавляем код
$row->prevTitle=$row->prev->title;
Это будет сам заголовок ссылки «Предыдущая» (Prev).
3. Соответственно, перед строкой 159
$row->next = JRoute::_(ContentHelperRoute::getArticleRoute($row->next->slug, $row->next->catslug));добавляем строку
$row->nextTitle=$row->next->title;
Как уже догадались - это заголовок ссылки «Следующая» (Next).
4. Заменяем строку 177
. JText::_( '<' ) . $pnSpace . JText::_( 'Prev' ) . '</a>на
. JText::_( '<' ) . $pnSpace . $row->prevTitle . '</a>
Здесь мы заменили текст «Предыдущая» на заголовок соответствующей статьи.
5. Строку 196. JText::_( 'Next' ) . $pnSpace . JText::_( '>' ) .'</a>заменяем на
. $row->nextTitle . $pnSpace . JText::_( '>' ) .'</a>
Ну а здесь заменили «Следующая» на заголовок следующей статьи.
Готово! Сохраняем файл и проверяем результат. Вот что получилось:

Намного лучше, не правда ли?
А сейчас будет SEO-фанатизм. Как известно, атрибут title в ссылках, по утверждениям авторитетных оптимизаторов - жирный кусок для поисковиков, если сама ссылка не содержит анкора. Поэтому нечего их голодом морить. Добавим title к нашим ссылкам. Для этого вставим атрибут title с теми же заголовками статей в соответствующие ссылки. (прим. - мнения насчет title в ссылках можно услышать разные, но думаю нет смысла делать title, если он повторяет анкор ссылки. Впрочем, решать вам.)
Заменяем строку
<a href="'. $row->next .'">'
на код с title
<a href="'. $row->next .'" title="'. $row->nextTitle .'">'
А строку
<a href="'. $row->prev .'">'
на
<a href="'. $row->prev .'" title="'. $row->prevTitle .'">'
Готово, можно сохранять. Сейчас ссылки навигации полностью оптимизированы, вместо банальных ссылок - заголовки статей, а при наведении на ссылки - появляются всплывающие подсказки. Желающие могут добавить к ним свой текст или слова «Следующая» и «Предыдущая».
Можно было конечно не трогать родной плагин, а сделать свой. Так будет лучше в случае обновления Joomla и возможной замены файла. Для этого надо было скопировать оба файла плагина (pagenavigation.php и pagenavigation.xml), затем переименовать в pagenav_re.php и pagenav_re.xml, к примеру. А в xml-файле надо заменить строку
<filename plugin="pagenavigation">pagenavigation.php</filename>
на
<filename plugin="pagenav_re">pagenav_re.php</filename>
и запаковать оба файла в архив zip или tar.gz и установить плагин.
Чтобы вместо родного плагина работал наш, надо выключить родной, а наш включить.
Ну и конечно, в параметрах менеджера статей надо включить навигацию между страницами.
А чтобы не мучиться самим с правкой файлов - можете скачать и установить готовый плагин.




