http://wm-monitoring.ru/ ')) {alert('Спасибо за то что установили нашу кнопку! =)');} else {alert('Очень жаль! =(');}"> http://wm-monitoring.ru/

Дубли страниц replytocom

Опубликовано: 23.08.2018

видео Дубли страниц replytocom

Удаляем дубли страниц на Wordpress 1 часть

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


Replytocom! Как найти, убрать и избавиться от дублей страниц replytocom в wordpress блоге!

Внимание. Запрет на индексации страниц с переменной replytocom в файле robots.txt не поможет вам избежать дублей. Google в отличие от Яндекс полностью игнорирует данный запрет в роботсе.

Сегодня в статье я расскажу обо всех способах избавления от такой заразы как дубли страниц replytocom в WordPress, которые мне известны. Это своего рода шпаргалка для меня, возможно некоторым моим читателям тоже пригодиться. Но для начала небольшое пояснение, что это за дубли для тех, кто не в теме.

Дубли replytocom это дубликаты страниц блога на движке WordPress, которые появляются из-за древовидных комментариев.

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

Допустим ваша статья имеет такой URL:

http://sait.ru/stranica.html

Именно эта страница является канонической и именно она должна попасть в индекс поисковых систем. Но когда в комментариях к статье пользователи начинают нажимать кнопку «Ответить», чтобы дать ответ предыдущему комментатору, то они автоматически генерируют дубликаты страниц с такими URL-адресами:

http://sait.ru/stranica.html?replytocom=998#respond http://sait.ru/stranica.html?replytocom=999#respond http://sait.ru/stranica.html?replytocom=1000#respond

Внешне же страницы с дополнением ?replytocom=…. Ничем не отличаются от основной страницы. Но если страницы имеют одинаковое содержимое и разные URL адреса, они будут считаться дублями, я писал уже об этом здесь .

Поисковые системы берут подобные дубли не в основной, а в дополнительный индекс (Supplemental Index). На сленге оптимизаторов их еще называют «сопли». Если блог накопит приличное количество соплей, то это очень будет тормозить развитие блога. А он накопит со временем, поверьте. Такие страницы попросту тянут ваш блог за уши назад и не дают ему развиваться.

Проверить есть ли у вас дубли replytocom достаточно просто. В поисковой строке Google наберите следующее (вместо sait.ru введите свой домен):

site:sait.ru replytocom

После этого нажмите «Поиск». В самом низу страницы выдачи есть блок со скрытыми результатами.

Нажмите на ссылку «Показать скрытые результаты» и вы увидите сколько у вас дублей страниц replytocom в индексе гугла.

Способов избавления от этой заразы оказывается немало. О них мы сейчас и поговорим.

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

1 Способ. Самый простой и эффективный способ избавиться от дублей replytocom – установить грамотный SEO плагин. Таким плагином я считаю Yoast Seo . В нем есть функция автоматического удаления переменной ?replytocom. Вы просто один раз в настройках плагина активируете удаление этой переменной и забываете, что такая проблема вообще существует в WordPress.

2 Способ. Устанавливаем специальный плагин для комментариев, который кнопки «ответить» будет обрабатывать скриптом и скроет злосчастные ?replytocom. Пример такого плагина — WordPress Thread Comment .

3 Способ. Просто отключаем древовидные комментарии. Отключив их вы избавитесь от будущих дублей. Но у этого способа есть минус. Во первых таким образом не удалить уже сформированные дубли ?replytocom. А во вторых, не каждому удобно давать ответы другим пользователям если отсутствует кнопка «Ответить».

4 Способ (им я пользовался до сегодняшнего дня). Скрываем кнопку ответить в тег SPAN. Способ этот я нашел на блоге Виталия Кириллова ( seo-mayak.com ).

Вообще всем, кто любит ковыряться в коде, рекомендую его блог. На нем просто нереально много полезной информации и немало авторских функций и хаков по WordPress.

Для того чтобы скрыть ссылку или кнопку ответит в тег SPAN нужно сделать следующее:

1 Шаг. Открыть файл function.php и после открывающего тега <?php вставить авторскую функцию Виталия Кириллова:

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

Эта функция удалить переменные ?replytocom с вашего блога. Более того, кнопки «Ответить» будут обрабатываться не как ссылки. Но это еще не все, переходим ко второму шагу.

2 Шаг. Вставив функцию, мы удалили тег <a>, вместо этого появился тег <span>,то есть мы удалили ссылки с кнопок ответить. И соответственно пропали стили оформления CSS. Поэтому нам нужно прописать эти стили для тега . Для этого откройте файл style.css и в самый конец вставьте вот этот код:

.comment-reply-link { color:#5151FF; /*добавляем цвет ссылки*/ text-decoration:none; /*Убираем подчеркивание*/ cursor:pointer; /*Добавляем курсор в виде руки*/ }

Теперь ссылки «Ответить» в комментариях ни чем не будут отличаться от обычных ссылок, они будут так же работать как и прежде, но при этом они не являются ссылками в прямом смысле. При желании можете подкорректировать стили CSS под дизайн своего блога.

Ссылки ?replytocom в стандартном варианте:

Ссылки ?replytocom после вставки функции:

5 Способ. Ставим на страницы с replytocom мета-тег noindex. Выглядит этот мета тег так:

<meta name='robots' content='noindex,nofollow' />

Он запрещает поисковым роботам индексировать страницы. В отличие от файла robots.txt , поисковые роботы не игнорируют данное правило. Для того, чтобы вставить этот мета-тег на страницы пагинации, вставьте вот этот код в файл function.php перед открывающим тегом <?php  (это снова авторская функция Виталия Кириллова):

remove_action( 'wp_head', 'wp_no_robots' ); function mayak_replytocom_robots() { echo "<meta name='robots' content='noindex,nofollow' />\n"; } if ( isset( $_GET['replytocom'] ) ) add_action( 'wp_head', 'mayak_replytocom_robots' );

6 Способ. Делаем 301 редирект со страницы дубля на каноническую страницу. Для того чтобы сделать редирект, скачайте себе на компьютер файл .htaccess который находится в корне вашего блога. В этот файл нужно вставить 2 строчки:

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

Вставить можно в самое начало файла, чтобы получилось примерно так:

# BEGIN WordPress RewriteCond %{QUERY_STRING} replytocom= RewriteRule ^(.*)$ /$1? [R=301,L] RewriteCond %{HTTP_HOST} nazyrov.ru RewriteRule (.*) http://www.nazyrov.ru/$1 [R=301,L] RewriteEngine On RewriteBase / RewriteRule ^index\.php$ — [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress

Минус данного способа, это огромное количество редиректов, что создаст немалую нагрузку на сервер. Да и поисковые системы не любят, когда на блоге слишком много редиректов.

Как удалить из индекса поисковых систем дубли ?replytocom

После того, как вы решили проблему с дублями replytocom, они сразу не исчезнут из индекса. Для этого должно пройти определенное время. В некоторых случаях процесс может затянуться до года.

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

Сделать это достаточно просто. Скопируйте вот этот код:

add_filter('template_redirect','RedirectReplytocom404'); function RedirectReplytocom404() { if ( isset( $_GET['replytocom'] ) ) { @header("HTTP/1.0 404 Not Found"); die(); } }

И вставьте его в файл function.php темы вашего блога. Эта функция будет перенаправлять поискового робота со страницы replytocom на страницу ошибки 404. В результате такие страницы постепенно будут вылетать из поиска.

Карта
rss