Audiophile's Blog
Логин:Пароль:


Забыл пароль | Регистрация (убрать всю рекламу)
О сайте | Ликбез | Словарь | Audiophile's Testroom | Поддержать | Контакты
Разделы
Поиск по сайту
Популярное
Персональная настройка
Настройка звука онлайн (foobar2000, драйвера, Windows), создание персональных сборок foobar2000.

Контакты

Случайный опрос
Какой lossless кодек вы предпочитаете?
Всего ответов: 3568
Полезный софт
Opera QIP 2010 Download Master µTorrent
Ace Utilities AIDA64 SpeedFan 7-Zip
ESET NOD32 FileZilla Media Player Classic Home Cinema Paint.NET
Sony Sound Forge VirtualDub Unlocker Punto Switcher
Похожие проекты
Сейчас на сайте
Онлайн всего: 16
Гостей: 16
Пользователей: 0
»

Как побороть дубли страниц на uCoz/uWeb


08 Марта 2014, 11:54

Не так давно я начал полномасштабную кампанию по SEO оптимизации своего ресурса. К SEO специалистам (того же Profit-Partner) я обращался уже давненько. Кроме всего прочего, первым делом они посоветовали мне избавиться от страниц-дублей. Это такие страницы, которые имеют разные адреса (URL), но идентичны по содержимому.

Почему дубли — это плохо?

Так как две или более страниц-дублей (с одинаковым содержанием) могут попасть в индекс, это может весьма неблагоприятно сказаться на ранжировании сайта в выдаче. Во-первых, поисковые системы не приветствуют дублирование контента внутри сайта. Во-вторых, страницы других сайтов в итоге могут ссылаться на разные URL одной страницы, и при этом передаваемый PageRank, например, будет рассредотачиваться между этими дублями, а не перепадать одной странице. В-третьих, из-за непоняток с весом страниц возникает путаница при установке быстрых ссылок сайта. И это еще не все минусы.

Примеры дублей

У CMS uCoz/uWeb, изначально рассчитанного на пользователей недалеких, примеров дублей огромное множество. Вот некоторые из них:

http://audiophilesoft.ru/publ/
http://audiophilesoft.ru/publ

http://audiophilesoft.ru/forum/
http://audiophilesoft.ru/forum

— и т. п. для различных модулей. Это является вопиющей ошибкой, т. к. строго говоря, /forum/ — это каталог (в котором обычно подхватывается файл index.*), а /forum — файл без расширения.

Для первой страницы архива новостей дубля даже три:

http://audiophilesoft.ru/news/
http://audiophilesoft.ru/news/1
http://audiophilesoft.ru/news

Еще больше дублей для материалов:

http://audiophilesoft.ru/publ/my/hq_pc_sound/11-1-0-24
http://audiophilesoft.ru/publ/my/11-1-0-24
http://audiophilesoft.ru/publ/11-1-0-24
http://audiophilesoft.ru/publ/software/hq_pc_sound/4-1-0-24

— и т. д, в т. ч. в модулях новостей, программ и в блоге. Некоторые из этих дублей переадресовывают на правильный адрес (первый в списке), однако бывают исключения.

Как бороться?

В идеале следовало бы установить 301-ю переадресацию (Moved permanently), но наш замечательный движок таковое осуществить не позволяет. Потому единственным верным решением будет использование тега <link rel="canonical" href="правильный адрес"/>. Он работает для большинства поисковых систем и сообщает, что данная страница является дублем указанной, т. е. текущий адрес является неканоническим, индексировать его не надо, а весь ссылочный вес надо передавать по указанному адресу. На канонической странице такого тега быть не должно.

И тут начинаются танцы-пляски с синтаксисом движка, т. е. поиски способа проверки текущего адреса на каноничность и в случае необходимости подстановка тега со ссылкой на каноничную страницу. К счастью, я (отчасти сам, отчасти с помощью поддержки uWeb) уже исследовал все нюансы работы движка и нашел 100% рабочий код для подстановки нужного тега в нужные страницы. Вот код для различных шаблонов (вставлять внутри <head></head>):

Модули статей и файлов: страница материала и комментариев к нему

<?ifnot($REQUEST_URI$=$ENTRY_URL$)?><link rel="canonical" href="$HOME_PAGE_LINK$$ENTRY_URL$"/><?endif?>

В данном случае алгоритм следующий: если текущий URL (в данном случае переменная возвращает URL без адреса домена) не совпадает с адресом материала, прописать тег со ссылкой на полный адрес материала (включая домен).

Модули статей и файлов: главная страница каталога

<?if(strpos($REQUEST_URI$,"/publ/")= -1)?><link rel="canonical" href="$HOME_PAGE_LINK$/publ/" /><?endif?>
и <?if(strpos($REQUEST_URI$,"/load/")= -1)?><link rel="canonical" href="$HOME_PAGE_LINK$/load/" /><?endif?>

Здесь проверяется вхождение в текущий адрес правильного адреса каталога. Если вхождений нет, прописывается тег с каноническим адресом.

Модули новостей и модуль блога: страница материала и комментариев к нему

<?if(strpos($ENTRY_URL$,$REQUEST_URI$)= -1)?><link rel="canonical" href="$ENTRY_URL$" /><?endif?>

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

Модуль новостей: страница архива материалов

<?if($CURRENT_PAGE$="1" && $REQUEST_URI$!='/news/')?><link rel="canonical" href="$HOME_PAGE_LINK$/news/" /><?endif?>

Если текущая страница — первая, а текущий URL не соответствует правильному адресу модуля, прописать тег с правильным адресом.

Модуль блога: главная страница дневника

<?if($CURRENT_PAGE$="1" && $REQUEST_URI$!='/blog/')?><link rel="canonical" href="$HOME_PAGE_LINK$/blog/" /><?endif?>

Если текущая страница — первая, а текущий URL не соответствует правильному адресу модуля, прописать тег с правильным адресом.

Модуль форума: общий вид страниц форума

<?if($URI_ID$='frMain' && strpos($REQUEST_URI$,"/forum/")= -1)?><link rel="canonical" href="$HOME_PAGE_LINK$/forum/" /><?endif?>

Если текущая страница — главная страница форума, и в текущий адрес отсутствует вхождение правильного адреса, прописать тег с правильным адресом.



Вот, собственно, и всё. Если вы правильно прописали код, в течение нескольких ближайших выдач из индекса Google, Яндекс и некоторых других поисковиков выпадут страницы-дубли.

Яндекс.Вебмастер: документ является неканоническим


Информация от спонсора

LIVETEX: звонки с сайта по технологии LiveTex. Используя звонок с сайта от Livetex, Вы можете организовать дозвон просто по нажатию кнопки на специальное приложение или на любой телефонный номер.

 
   
Просмотров: 1911 | Автор: | Добавил: Audiophile () | Рейтинг: 5.0/5, голосов: 3
Всего комментариев: 6
[6] shuvay   (02 Сентября 2014 09:33)
Спасибо, помогло. У Вас опечатка, 2 раза закрыт тег if
Модуль новостей: страница архива материалов<?if($CURRENT_PAGE$="1" && $REQUEST_URI$!='/news/')?><link rel="canonical" href="$HOME_PAGE_LINK$/news/" /><?endif?><?endif?>

[1] TiLL   (08 Августа 2014 01:43)
Спасибо, весьма познавательно!
Однако, столкнулся с проблемой в категории новостей.
Код:
<?if($CURRENT_PAGE$="1" && $REQUEST_URI$!='/news/')?><link rel="canonical" href="$HOME_PAGE_LINK$/news/" /><?endif?>

Следуя этому коду также становятся неканоническими страницы категорий новостей, к примеру:
site.ru/news/obzor/1-0-2
site.ru/news/info/1-0-4
Канонической страницей для них становится site.ru/news/

Как это исправить и оставить нетронутыми страницы категорий? Так как страницы категорий удалось привести к нормальному виду и они нормально ранжируются по некоторым запросам.

+1  
[2] Audiophile   (12 Августа 2014 20:19)
Не пользуюсь категориями - проверить не могу. Попробуйте добавить условие &&$PAGE_ID$='nwArchive'

[3] TiLL   (12 Августа 2014 21:10)
Спасибо, помогло :)

[4] TiLL   (13 Августа 2014 17:26)
А еще, пожалуйста, подскажите.
Как быть со страницами 2,3,4 и т.д. в категориях?
По типу:
site.ru/news/obzor/1-0-1 - Главная страница категории.
А как быть со страницами:
site.ru/news/obzor/2-0-1
site.ru/news/obzor/3-0-1
site.ru/news/obzor/4-0-1
Что еще добавить, чтобы сделать их неканоническими? А канонической сделать главную страницу категории.

0  
[5] Audiophile   (16 Августа 2014 11:03)
Не понял. Хотите чтобы страницы категории ссылались на первую как на каноническую? Зачем? Они же разные по содержимому.

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Авторские статьи
Сообщество
Последнее на форуме
Кодеки
TAK FLAC APE WV
MPC OGG AAC/ALAC MP3
WMA TTA OFR LA
Теги
Follow me
Twitter YouTube
Google+ Facebook
Полезные ссылки
Copyright Taras Kovrijenko © 2009–2016