Войти

Показать полную графическую версию : Как избавиться от дублей страниц?


rabit
18-10-2014, 21:59
В моем сайте на Wordpress включены древовидные комментарии, в итоге в индекс поисковиков попадают дубли страниц со ссылкой
страница?replytocom=10#respond /коментарий11
страница?replytocom=11#respond /коментарий12
страница?replytocom=12#respond
По сути это одна и та же страница, как можно от этого избавиться, чтобы поисковики вдруг не наложили какой нибудь фильтр.

Master-It
18-10-2014, 22:18
Если у вас еще нет, то создайте файл robots.txt в корне сайта и добавьте в него инструкции:


User-agent: *
Disallow: /*?replytocom
Disallow: /*?

После этого Яндекс перестанет индексировать ссылки с ?replytocom, а Google их удалит из основного индекса, и переведет в (сопливый) Supplemental Index. :)

rabit
18-10-2014, 23:18
Спасибо, добавил в robots.txt disallow /*?replytocom, надеюсь теперь дубли не будут появляться, а можно как-то вообще удалить вывод ссылки с replytocom не отключая древовидные комментарии?

Master-It
19-10-2014, 00:40
Если нет опыта в веб программировании, то лучше отключить древовидные комментарии, и установить плагин WordPress Thread Comment, который возьмет на себя эту функцию.
Если опыт есть, то можно в function.php используемой темы добавить такую функцию:

function del_replycom($replycom_remove)
{
$cut = "!<a(.*?)href='(.*?)'(.*?)>(.*?)</a>!si";
$insert = "<span class='comment-reply-link' \\3>\\4</span>";
return preg_replace($cut, $insert, $replycom_remove);
}
add_filter( 'comment_reply_link', 'del_replycom' )


Добавлять нужно в самый конец, перед закрывающимся тегом ?>

Habetdin
19-10-2014, 16:08
rabit, а правильный путь по избавлению от дублей в выдаче - добавление атрибута rel="canonical" тега <link>: справки от Яндекса (https://help.yandex.ru/webmaster/controlling-robot/html.xml#canonical) или Google (https://support.google.com/webmasters/answer/139066?hl=ru#2) расскажут об этом подробнее, а сделает плагин вроде WordPress SEO (https://wordpress.org/plugins/wordpress-seo/) :)
[hr]А еще для Яндекса дополнительно можно указать в robots.txt директиву Clean-param (http://help.yandex.ru/webmaster/controlling-robot/robots-txt.xml#clean-param):
User-agent: Yandex
# ...
Clean-param: replytocom
А для Google подобное задается в панели управления для вебмастеров.

Master-It
19-10-2014, 20:11
Habetdin, никогда не использовал Clean-param в robots.txt, нужно будет протестировать работу.

rabit
20-10-2014, 17:21
Удалось вырезать ссылку с помощью add_filter, и оформил CSS для оформления кнопки ответить, теперь порядок. Спасибо за помощь!




© OSzone.net 2001-2012