Все ленты — последние статьи

Как избежать дублирования страниц и контента

В настоящее время весьма актуальным является вопрос по дублированию страниц в различных системах администрирования. Дублирование страниц и контента плохо влияет как на usability (юзабилити), так и на поисковую оптимизацию и продвижение сайтов. За дублирование страниц и не уникальный контент вполне можно получить "пенальти" от поисковых систем (возьмем, к примеру, фильтры от Яндекс — АГС).

 

1 Прежде чем начать делать новый сайт, заранее продумайте дерево сайта. Чем проще и понятнее будет дерево сайта, тем лучше.

2 Начинайте делать сайт локально, т.е. не выкладывая его на хостинг. Проверьте работоспособность компонентов и правильность урлов до выкладывания сайта на хостинг.

Если Вы всё-таки решили делать сайт сразу на хостинге, то на время создания закройте его индексацию в файле robots.txt:


User-agent: *
Disallow: /

В последствии не забудьте убрать запрет индексации (Disallow: /).

3 Перед тем как Вы будете выкладывать сайт на сервер, не забудьте удалить с сайта все демо данные Joomla, в том числе и из корзины!

4 Заранее продумав структуру сайта, определите необходимые для сайта модули и компоненты. Не ставьте всё подряд! Отключайте не нужные модули и плагины (это в том числе ускорит работу Вашего сайта)! После того как Вы определитесь в выборе модулей и компонентов, проверьте их работу локально, посмотрите их на наличие ошибок, а также на правильность создания урлов Вашего будущего сайта.

5 С помощью файла .htaccess уберите дубли главной страницы Joomla. Вот пример, после RewriteEngine On вписываете следующий код:

RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]

site.ru — заменяете на свой домен

6 Если Вы используете на своем сайте SEF URLs без суффиксов на конце (т.е. без .html), Вам необходимо знать, что для поисковиков страница заканчивающаяся на слэш и без него, это две разные страницы. С помощью файла .htaccess можно убрать подобные дубли страниц. Вот пример кода для файла .htaccess, который добавляет слэш в конце урла:


RewriteCond %{REQUEST_URI} (.*/[^/.]+)($ ?)
RewriteRule .* %1/ [R=301,L]

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

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

Вот как выглядит прямая ссылка в меню на статью:

http://site.ru/index.php?option=com_content&view=article&id=6&Itemid=53

А вот как выглядит конечный URL статьи в категории:

http://site.ru/index.php?option=com_content&view=article&id=6:we-are-volunteers&catid=1:latest-news&Itemid=53

Таким образом, страницы дублируются. На самом деле, если сюда приплюсовать неправильное использование модулей вывода статей, постраничной навигации, компонента поиска и создания отдельных пунктов меню, то можно добиться появления 5-6-ти дублей практически каждой страницы.

9 Используйте SEF компоненты. Это отчасти защитит Вас от дублирование страниц. Правда, скорее всего, понизит скорость открытия Вашего сайта, особенно, если у Вас большая посещаемость, а сайт лежит не на выделенном сервере.

10 Используйте файл robots.txt для устранения дублей страниц, дабы избежать пенальти от поисковиков.

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

Многие наверное замечали, что при первичном попадании на сайт к url прилепляется идентификатор сессии в виде большого количества цифр.

Образуется вот такой урл: http://site.ru/index.php?option=com_content&view=article&id=25&Itemid=28&aaec2da631c7e87cc54906652f3f7d4f=17edd34738f9e6008dda4f3b4a62d167

Все лишние цифры в конце урла ликвидируются вставкой следующих строк в файл .htaccess:


php_flag session.use_trans_sid off
php_flag session.use_cookies on
php_flag session.use_only_cookies on

Во еще пример:
Когда Вы выводите на сайте раздел и переходите в категорию, Jommla добавляет к урлу следующий код &layout=default

http://site.ru/index.php?option=com_content&view=category&id=31:general&layout=blog&Itemid=46&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));

Будем надеяться, что в дальнейшем разработчики Joomla устранят недочеты и не наделают новые :)