пятница, 2 октября 2015 г.

Боремся с дублями Joomla – 7 эффективных методов

Боремся с дублями Joomla – 7 эффективных методов


В прошлой статье – Дубли Joomla – причины возникновения, мы поговорили о том, почему они возникают и как их искать. В этой статье расскажу как можно убрать дубли или предотвратить их появление в поисковой выдаче.
Так как каждый случай индивидуален, рассмотрим самые популярные способы, которые в 99% случаев отлично работают. Можно для себя выбрать что-то одно или использовать в комплексе.
Хотя все эти способы применимы и к любой другой CMS системе, но я подробно остановлюсь именно на особенностях Джумлы.
Все эти примеры справедливы если вы включили стандартный SEF и Перенаправление URL в глобальных настройках J.
  • 1. Плагин для Joomla
Первое, что можно сделать, если у вас путаница в урлах, (когда ссылки формируются и от алиаса категории, и от пункта меню) – поставить плагин Shnodoubles от sherza.
Отличный плагин, справляется со своей задачей на все 100%. После его установки неправильно сформированная ссылка (от алиаса категории) редиректится на правильную (от пункта меню). Скачать этот замечательный плагин, избавляющий от дублей, для Joomla 2.5 можно здесь (ссылка прямая!)
После активации плагина некоторые дубли просто склеятся.
  • 2. Robots.txt для Joomla
Этот файл идет в стандартном дистрибутиве Joomla, располагается в корне и доступен по ссылке site.ru/robots.txt. Основная цель – он дает инструкции поисковым роботам по индексации сайта. С его помощью можно закрыть некоторые (нужные вам) разделы сайта, также поддерживаются регулярные выражения – можно закрыть отдельные страницы по маске.
Чаще всего я использую такую инструкцию (в дополнение к тому, что идет в файле по умолчанию):
Disallow: /*? #все ссылки, которые содержат этот знак – не индексируются
Всего одна строчка избавляет от большого кол-ва мусора. Это могут быть:
  • страницы печати материалов, содержать в урлах также print= или tmpl=component
  • ссылки на rss ленту
  • страницы результатов поиска по сайту
  • также закроет страницы пагинации
  • могут быть и другие варианты, в зависимости от используемых расширений
Использовать эту строчку или запрещать каждый тип страниц в отдельности – на ваше усмотрение, но имейте в виду, что слишком большой роботс считается полностью разрешающим. Так же стоит проследить, чтобы эта строчка не закрыла что-то важное, например, карту сайта – в таком случае можно прописать: Allow: /путь_до_карты
Подробнее об использовании robots.txt можно прочитать в помощи Яндекса —help.yandex.ru/webmaster/?id=996567
  • 3. Атрибут rel=«canonical» тега <link>
Использование этого атрибута поможет роботу определить – какие страницы нужно включать в индекс, а какие нет. Если на сайте существуют очень похожие страницы (нечеткие дубли), отличающиеся лишь, к примеру, вариантами сортировки – с начала новые или сортировать по возрастанию, или показывать по 20-30 и т.д., то вы можете использовать этот атрибут. В таком случае нужно будет выбрать одну каноническую страницу, которая и будет ранжироваться, на остальные добавить rel=«canonical» с указанием выбранной страницы – такие документы не попадут в выдачу, робот будет знать, что включать в индекс их не нужно.
Подробнее, как внедрить rel=«canonical» в Joomla 1.7/2.5 смотрите здесь
  • 4. 301 редирект
Уместно использовать если вы сменили адреса страниц, но документы по-прежнему существуют, т.е вы их не удалили. В таком случае, для правильной склейки рекомендуется использовать 301 редирект в .htaccess – поисковики буду знать, что документ переехал на новый адрес. Такой метод позволяет сохранить и показатели сайта – Тиц и PR.
301 редирект можно использовать так же и для склейки дублей. Например, всем известные дубли главной страницы сайта на Joomla – это /index.php и алиас пункта меню Главная, допустим, /home или /homepage
Склеить их довольно просто, открываем .htaccess и вписываем
Redirect 301 /index.php http://site.ru/
Или можно сделать 301 редирект на php в индексном файле вашего шаблона
<?php
 if($_SERVER['REQUEST_URI'] == '/index.php') {
 header("Location: /",TRUE,301);
 exit();
 }
 ?>
И приведу уже классический редирект с www на без www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.ru$ [NC]
RewriteRule ^(.*)$ http://example.ru/$1 [R=301,L]
* example.ru замените на свое доменное имя.
  • 5. Мета тег robots
Еще один способ предотвратить индексацию дублей в Joomla – использование мета тега:
<meta name="robots" content="noindex"/>
На данный момент этот способ эффективнее для Гугла, чем запрещающие инструкции файла robots.txt. К примеру чтобы закрыть от индексации страницы печати и дубль по адресу ?tmpl=component, можно открыть файл component.php в корне вашего шаблона и вписать этот тег в <head></head>.
Чтобы закрыть страницы результатов поиска на сайте с использованием стандартного com_search, можно в index.php шаблона добавить условие
<?php if ($option == 'com_search')  : ?>
<meta name="robots" content="noindex"/>
<?php endif; ?>
Но вначале необходимо определить переменную
$option = JRequest::getVar('option', null);
Сильно углубляться в условия в шаблонах не буду, статья не об этом, надеюсь принцип понятен.
  • 6. Удаление url из панели
Еще один быстрый способ – ручное удаление из панели вебмастера.
Для Яндекса нужно пройти по адресу – webmaster.yandex.ru/delurl.xml
Остался еще 1 не очень популярный метод по устранению дублей Joomla из выдачи, но мы его тоже рассмотрим.
  • 7. Заголовки X-Robots-Tag
Довольно редкий заголовок, используется чаще зарубежными оптимизаторами, работает он для Гугла. К сожалению, Яндекс пока не комментирует поддержку этого http-заголовка.
Google рекомендует использовать X-Robots-Tag как альтернативу 5 способу в нашей статье для нетекстового содержания, когда нет возможности использовать мета-тег.
HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT 
...
 X-Robots-Tag: noindex 
...
Как видите, способов убрать дубли контента Joomla множество, вы должны хотя бы примерно понимать как работает каждый их них, чтобы выбрать наиболее подходящий вариант и применить к своей ситуации.

0 коммент.:

Отправить комментарий