Практические решения

Дубли страниц в Joomla - причины, ошибки и решения

Joomla

dubli-stranits-v-joomla-prichiny-oshibki-i-resheniya

Итак, дубли – это идентичные документы на вашем сайте, которые доступны через разные URL. На самом деле дубли страниц являются слабым местом любой CMS, не только Joomla. Все эти страницы безвредны, пока не будут проиндексированы поисковой системой. Самое главное, следить за индексацией и сразу же предпринимать действия по удалению таких страниц из результатов поиска, но еще лучше заранее продумать структуру сайта и таким образом избежать таких ситуаций.

Самой главной причиной появления дублей является неверная структура веб-сайта. Прежде всего, вам необходимо продумать иерархию категорий и пунктов меню. Если вы создаете несколько категорий заранее, то это поможет избежать дублей страниц в будущем.

Давайте посмотрим на самые распространенные ошибки. Предположим, у вас есть категория "News" и у неё есть несколько подкатегорий – "Politics", "Economy", и т.д., и все материалы вы привязываете к дочерним категориям. Если вы создадите пункты меню только для подкатегорий, например "Politics", то ссылки (дл материалов) могут быть такими:

https://website.com/politics/23-material
https://website.com/1-news/politics/23-material
https://website.com/1-news/2-politics/23-material
https://website.com/index.php?option=com_content&task=view&id=23&Itemid=1

И так далее и тому подобное - у вас появятся различные возможности формирования url, и все они будут просто копиями одной страницы. Это пример того, как это не должно быть. Кроме того, поисковые системы могут индексировать технические копии, которые доступны через ссылки "Print", "PDF", "Send to  afriend".

Вы должны продумать структуру и определить главные категории и подкатегории уже на старте создания вашего веб-сайта. С ростом вашего ресурса нет необходимости в изменении существующей структуры, просто добавьте дополнительные разделы. Реструктуризация вашего сайта на пике разработки будет просто провалом. К тому же, некоторые страницы (а в плохом случае все) изменят свои адреса, что приведет к серьезной потере позиций в результатах поиска и посещений.

Так как же поисковые системы находят дубли страниц?

Самая распространенная причина – это расширения, которые устанавливаются на веб-сайты Joomla. Пример – новостной модуль на главной странице может выдать разные адреса. Иногда такие дубли страниц видно даже в карте сайта, например, если у вас установлен компонент Xmap.

Если ваш сайт уже проиндексирован, то не так сложно найти дублированный контент, просто скопируйте несколько уникальных текстов со страницы и вставьте этот материал (в кавычках) в поиск Google. Если сайт не проиндексирован, то вы можете попробовать XENU (в случае, если ваш сайт не очень большой).

Зачем нужно избавляться от дублей страниц?

Поисковым системам не нравится, и они не пытаются проиндексировать веб-сайты с большим количеством идентичных страниц, так как их необходимость в поиске становится под вопросом. При оптимизации страниц под определенные ключевые слова выбираются наиболее релевантные страницы, и контент оптимизируется для них. Если такие страницы имеют дубли, то во время обновления поисковые системы могут заменить релевантные страницы их дублями (это сопровождается резким падением в позициях и понижением трафика).

5 путей избавления от дублей страниц

Каждый субъект (веб-сайт) уникален, давайте рассмотрим наиболее популярные методы, которые срабатывают в 99% случаев. Выберите один из этих способов или используйте их в комплексе. В общем-то, эти решения могут быть применены к любой другой CMS.

Все эти примеры валидны, если вы включили стандартный SEF и перенаправление страниц в общих настройках.

1. Robots.txt для Joomla

Этот файл включен в стандартный пакет Joomla, расположен в корневой директории и доступен по адресу yourwebsite.com/robots.txt. Он показывает поисковым системам, как индексировать ваш веб-сайт. С его помощью вы можете закрыть определенные части вашего сайта. Дополнительно вы можете использовать следующую инструкцию для данных по умолчанию:

Disallow: /*? #любая ссылка, содержащая этот знак, не будет проиндексирована *

Всего лишь одна строка спасла вас от сохранения такого мусора, как:

  • страницы для печати;
  • ссылки на rss ленты;
  • страница результатов поиска по сайту;
  • также закроет постраничную навигацию;
  • а также многие другие варианты, в зависимости от используемых расширений.

Использовать эту строку или нет, решать вам, но всегда помните, что слишком большой файл robots считается полностью рарешающим. Обратите внимание на то, что эта строка не должна перекрывать что-то важное, типа карты сайта, поэтому вы можете просто добавить строку Allow: /sitemap.

2. Redirect 301

Redirect 301 подходит для случаев, когда вы поменяли адреса, а документы все еще существуют. В этом случае для правильной привязки вам необходимо использовать redirect 301 в файле .htaccess. Таким образом поисковые системы поймут, что документ перемещен по новому адресу. Этот метод позволяет сохранить как посещаемость, так и PR.

301 redirect может также использоваться для склеивания дублей страниц. Например, широко используемые дубли главной страницы на Joomla сайтах: /index.php и алиас меню Home, например /home или /homepage. Они могут быть довольно просто склеены – откройте ваш файл .htaccess и введите:

Redirect 301 /index.php http://site.com/

… или вы также можете сделать redirect 301 в index.php файле вашего шаблона:

<?php 
if ($_SERVER['REQUEST_URI'] == '/index.php')
{
    header("Location: /", TRUE, 301);
    exit();
}
?>

Вот классический пример url c и без www:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

Здесь вы сможете найти разлиные варианты использования redirect 301.

3. Мета-тег Robots

Еще один из вариантов предотвращения индексирования дублей страниц – использовать мета тег robots:

<meta name="robots" content="noindex" />

На данный момент эта опция намного лучше для Google, чем использование инструкций в файле robots.txt. Например, для закрытия страниц результатов поиска вам необходимо добавить в <head> </ head> следующий код:

<?php $option = JFactory::getApplication()->input->getCmd('option', '');
if ($option == 'com_search') : ?>
    <meta name="robots" content="noindex" />
<?php endif; ?>

4. Удаляем URL из панели Вебмастера

Еще один путь по избавлению от дублей – это удалять их вручную из панели вебмастера, для Google:

https://www.google.com/webmasters/tools/home?hl=ru

5. Тег X-Robots-Tag

Google рекомендует использовать тег X-Robots-Tag в качестве альтернативы четвертого метода.

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
...
X-Robots-Tag: noindex
...

Заключение

Как вы видите, существует множество путей по устранению дублей. Изучите их и выберите для себя самый подходящий. Также посетите радел Поисковая оптимизация, продвижение сайтов на Joomla (SEO) на joomlaforum.ru - там вы найдете много полезной информации на эту тему.

Оригинальная статья: Alex Bulat
Dmitry Rekun
Работаю в банковской сфере, а с веб-разработкой (непосредственно с Joomla) столкнулся в 2007 году. Теперь это моё хобби и время от времени вторая работа. Какое-то время вёл свой блог, но решил попробовать работать в команде. И вот c 2012 года я здесь :)
timeweb

Заработок в сети

  • Sape - биржа ссылок