CMS Joomla!

...всё дело в открытом коде

  • Увеличить размер
  • Размер по умолчанию
  • Уменьшить размер
Главная Блог SEO оптимизация Joomla SEO оптимизация навигации между статьями Joomla 1.5
30.06.10 21:45

SEO оптимизация навигации между статьями Joomla 1.5

Написал  Олег М.
Оценить
(7 голоса)

Всегда раздражала SEO оптимизация Joomla в стандартной сборке. Навигация между статьями тоже никак не способствует оптимизации. Ссылки «Следующая» и «Предыдущая» лично я считаю таким же вредительством сайту, как и ссылку «Подробнее...» (или «Читать полностью», это уж в каждой русификации по-своему). Гораздо интереснее смотрятся ссылки в виде заголовкой статей, и не только для поисковиков. Если «Следующая» и «Предыдущая» абсолютно ни о чем не говорят, то заголовки статей подскажут, куда мы придем, нажав на ссылку. Так исправим же этот недостаток Joomla CMS.

Итак, приступим к оптимизации ссылок навигации Joomla

Вот какое безобразие было до SEO-оптимизации ссылок Joomla:

Ссылки до оптимизации 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::_( '&lt' ) . $pnSpace . JText::_( 'Prev' ) . '</a>
на
 . JText::_( '&lt' ) . $pnSpace . $row->prevTitle . '</a>

Здесь мы заменили текст «Предыдущая» на заголовок соответствующей статьи.

5. Строку 196
. JText::_( 'Next' ) . $pnSpace . JText::_( '&gt' ) .'</a>
заменяем на
. $row->nextTitle . $pnSpace . JText::_( '>' ) .'</a>

Ну а здесь заменили «Следующая» на заголовок следующей статьи.

Готово! Сохраняем файл и проверяем результат. Вот что получилось:

seo оптимизация joomla - замена ссылок навигации

Намного лучше, не правда ли?

А сейчас будет 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 и установить плагин.

Чтобы вместо родного плагина работал наш, надо выключить родной, а наш включить.

Ну и конечно, в параметрах менеджера статей надо включить навигацию между страницами.

А чтобы не мучиться самим с правкой файлов - можете скачать и установить готовый плагин.

Изменено 31.08.10 21:42
Олег М.

Олег М.

Веб-разработчик со пятилетним стажем, администратор joomla-support.ru, локализатор, ответственный за выпуск русской Joomla RE.

Сайт: cms-joomla.ru E-mail: Данный адрес e-mail защищен от спам-ботов, Вам необходимо включить Javascript для его просмотра.
Подробнее в этой категории: Добавляем атрибут title к ссылкам mod_mainmenu »

4 комментарии

Leave a comment

Make sure you enter the (*) required information where indicated.
Basic HTML code is allowed.


Скачать русскую Joomla 1.5

Выберите архив Джумлы в формате ZIP или TAR.GZ (TGZ)
Joomla 1.5.25 RE Stable Full Package (zip)
6.21 MB
Joomla 1.5.25 RE Stable Full Package (tar.gz)
4.4 MB

Пакеты обновлений Joomla RE 1.5 Скачать обновление Joomla RE

Онлайн-помощь

Нужна срочная помощь по CMS Joomla? Звоните!

Краткий перечень услуг:
  • установка, восстановление и настройка Джумлы;
  • миграция на Joomla 1.5;
  • верстка шаблонов Joomla;
  • разработка сайтов-визиток;
  • разработка интернет-магазинов

Мой статус

Время работы: 10:00-19:00 (мск) Внимание! Вся помощь осуществляется на платной основе с почасовой оплатой

Авторизация