7 шагов к SEO
Всеобъемлющего руководства, как вылечить эту особенность
cms joomla, добавляющую немало головной боли seo-оптимизаторам -
дубли страниц - дать не смогу. Всего лишь небольшой ряд моментов и короткий перечень советов.
Почему и как
joomla дублирует статьи?
Например:
Прямая ссылка в меню на статью выглядит следующим образом:
http://vash_site/index.php?option=com_content&view=article&id=6&Itemid=53
А вот это - конечный url статьи в категории:
http://vash_site/index.php?option=com_content&view=article&id=6:current&catid=1:latest-news&Itemid=53
Вот вам и дубли.
Плюс модули вывода статей и ряд компонентов; все это вкупе способно продублировать несколько раз практически каждую страницу вашего сайта. Что, разумеется, не вызовет энтузиазма у ботов поисковых систем, индексирующих ваш сайт.
Что же делать?
1. Используйте
SEF-компоненты (например,
sh404SEF).
2. Запрещайте к индексации дубли при помощи
robot.txt.
3. Уберите идентификатор сессии адреса при помощи вставки в
.htaccess следующего кода:
php_flag session.use_trans_sid off
php_flag session.use_cookies on
php_flag session.use_only_cookies on
4. При переходе из выведенного на сайте раздела к категории, к
url будет добавлен следующий код -
&layout=default.
Чтобы избежать этого, достаточно в файле
components/com_content/views/section/view.html.php
следующую строчку кода -
$category->link = JRoute::_(ContentHelperRoute::getCategoryRoute($category->slug, $category->section).'&layout=default');
изменить следующим образом:
$category->link = JRoute::_(ContentHelperRoute::getCategoryRoute($category->slug, $category->section));
5. Необходимо помнить, что для любого поисковика страница, заканчивающаяся на /, и без / - это две разные страницы. Таким образом, если на сайте используется
SEF URLs без
.html на конце (скажем, в "Общих настройках"
joomla - "Установки SEO" - "Добавить суффикс к URL" - Нет) то уже и опять-таки имеем дубли страниц... которые убираем при помощи все того же
.htaccess:
RewriteCond %{REQUEST_URI} (.*/[^/.]+)($|\?)
RewriteRule .* %1/ [R=301,L]
6. Убираем дубли главной страницы, поместив в
.htaccess следующие строчки:
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.vash_site$ [NC]
RewriteRule ^(.*)$ http://vash_site/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://vash_site/ [R=301,L]
7. и последнее. Думаю, необходимо понять и принять тот факт, что... короля, как известно, делает свита; а сайт делает САЙТОМ -
контент, и только контент. По возможности - ограничьте число используемых на сайте модулей и компонентов, выводящих многочисленные ссылки на статьи. Enjoy!