Прогон по 4 млн сайтов
Главная » Блоггинг » Вы здесь =)

Осторожно! WordPress создает много дублей!

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

Напугал? Не переживайте =) . Баг, действительно, серьезный, но исправить его можно достаточно просто. Ниже я расскажу, что это за зверь и как от него избавиться.

wordpress создает дубли

В связи с недавними баден-баденовскими событиями начал плотно изучать информацию в Яндекс.Вебмастере. Анализировал сводку по индексированию («Страницы в поиске»). Искал связь между пометками «Некачественная страница» и наложением фильтра за переоптимизацию.

пример некачественного документа

И вот, зайдя в статистику для блога, был неприятно шокирован — сотни дублей несуществующих документов.

дубли страниц

идентичные документы

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

На таких страницах нет мета-тега robots и есть canonical, который в качестве канонического документа указывает именно дубль.

canonical

Проверьте, у вас также?

Усугубляет ситуацию связь с плагином All in one SEO pack, который дополнительно дает ссылку на предыдущую запись: поисковый робот не только заходит, по сути, на несуществующую страницу, но и начинает ходить по другим таким же. Добавлялось и удалялось сотни подобных «постов».

добавлено/удалено

Я начал копать глубже и создал топик на wordpress.org. Оказалось, что еще в 2014 был баг при создании многостраничных постов с помощью тега <!—nextpage—>. Тогда также создавались несуществующие документы, но canonical для 2-й, 3-й или последующих страниц, наоборот, указывали всегда на первую, то есть не индексировались.

Начиная с WordPress 4.4 баг с canonical убрали (у каждой «пагинированной» страницы поста появился свой каноникал), а вот ошибку с созданием несуществующих документов не убрали. Поэтому сейчас индексируется больше, чем нужно :smile:.

Что делать и как убрать дубли?

Сперва, хочу сказать, что в одной из ближайших версий вордпресса этот баг постараются исправить.

ошибку уберут в вордпресс 4.8

Пока же нам придется убирать его, так называемыми, «костылями» :smile:. Существует 2 варианта.

1) Плагин After Last Page Fix от Белотицкого Юрия. Скачать можно здесь. Установка в один клик, настроек нет. Скрипт вместо создания множества дублированных документов отдает 404-ошибку. На мой взгляд, самый удачный вариант. Недостатки:

  • плагин добавляет дубль rel=»canonical»;
  • и shortlink.

2) Дополнительная настройка All in One SEO Pack. Разработчики этого плагина, скорее всего, оказались в курсе данного бага и в новых версиях появились дополнительные чекбоксы.

noindex и nofollow для постов с пагинацией

Несуществующие записи будут создаваться, но в них будет указан мета-тег robots, запрещающий их индексирование.

meta name=robots noindex и nofollow

В других SEO-плагинах для wordpress не смотрел. Вероятно, в Yoast SEO или подобных будут такие же настройки. UPD. Да, действительно, в плагине от Yoast прописывается каноникал на основную запись.

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

Получается, что, обновляясь на новую версию wordpress, не только устраняешь старые ошибки CMS, но можешь и получить новые. Интересно, какая у вас версия движка и создаются ли такие несуществующие посты? Поделитесь статистикой в комментариях ;-).

1 звезда2 звезды3 звезды4 звезды5 звезд (8 голос., в среднем: 4,63 из 5)
Загрузка...

Дата: 11.04.2017
Получайте актуальные статьи по SEO, блоггингу и заработку в Интернете
прямо на ваш почтовый ящик. Уже более 3000 подписчиков!
Отзывов уже 28:
  1. 1. Marian | 11 апреля 2017

    Баг присутствует (WP 4.7.3), но в SEO Yoast каноникал по умолчанию указывает на корректный урл.

  2. 2. Имя | 11 апреля 2017

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

  3. 3. Sosnovskij | 11 апреля 2017

    Marian, Имя, подтверждаю, Yoast SEO ставит корректный каноникал.

  4. 4. Дмитрий | 11 апреля 2017

    Sosnovskij, то стоит что-то менять?

  5. 5. Sosnovskij | 11 апреля 2017

    Дмитрий, не понял Ваш вопрос :)

  6. 6. Алексей | 11 апреля 2017

    Вы что, серьёзно? Проблеме сто лет в обед.
    Код для htaccess
    # 301 for canonical /2/
    RewriteCond %{REQUEST_URI} !(/page*)
    RewriteRule (.*)\/([0-9]+/)$ /$1/ [R=301,L]

    # 301 for canonical /page/
    RewriteCond %{REQUEST_URI} !(/category*)
    RewriteRule (.*)page\/([0-9]+/)$ /$1 [R=301,L]

  7. 7. Kanapiya | 11 апреля 2017

    А как найти эти страницы у себя на сайте?

  8. 8. Sosnovskij | 11 апреля 2017

    Алексей, если внимательно прочитать пост, то я написал, что проблема еще с 2014 года. Она была другого рода. Она выявлялась, когда почему-то многостраничные посты не индексировались. Так как записи практически никто не разбивал, то и проблемы как таковой не было (документы /213213/ создавались, но имели canonical на основной пост).

    С 4.4 (не так уж и давно) стали не только создаваться, но и индексироваться подобные страницы, которые, на самом деле, не существует. Это более серьезно.

    Kanapiya, добавьте к URL записи любую цифру и закройте слэш. Проиндексированные такие документы можно поискать в Яндекс.Вебмастер. Но лучше просто их закрыть от индексации (canonical на основной пост, noindex), отдавать 404 ошибку или настроить 301-редирект.

  9. 9. Алексей | 11 апреля 2017

    Sosnovskij,
    не, именно эта проблема в 15 или 16-м году муссировалась

  10. 10. Sosnovskij | 11 апреля 2017

    Алексей, 4.4 вышел в декабре 2015. Мне такая информация, к сожалению, не попадалась. Пока сам с проблемой не столкнулся, не узнал. Полагаю, что еще очень многие не сталкивались с багом.

  11. 11. seoonly | 11 апреля 2017

    подожду обнову)) спасибо.

  12. 12. jkeks | 11 апреля 2017

    А у меня другая проблема, в индекс залезали comment-pages-.. И основные вылетали из индекса почему-то. Пока в роботе не прописал костыль, творилась такая фигня. Но самое тупое в этой истории то, что как только прописал робота и дубли commant-pages стали вылетать, на сайте стал падать трафик. Так что тут какая-то каша происходит с Яндексом и WordPress. Делаешь как можно лучше, а оно хуже и хуже.

  13. 13. Павел | 12 апреля 2017

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

  14. 14. Наталья | 12 апреля 2017

    А если у меня в статье уже стоит тег canonical, нужно ли еще в СЕО-плагине ставить галочку «Canonical URLs:»?

  15. 15. Sosnovskij | 12 апреля 2017

    Наталья, если везде стоят корректные каноникал, то тогда ставить не обязательно.

  16. 16. Дмитрий | 12 апреля 2017

    Привет, Сергей!

    Поддержу некоторых комментаторов по поводу недоумения по новым мотивам этой проблемы. Вроде она именно в данном плагине и кроется и его же настройками решается.

    Мне она на глаза в 2015 попалась (http://ktonanovenkogo.ru/wordpress/wordpress_osnovi/problema-all-in-one-seo-pack-ubiraem-relprev-relcanonical-ubrat-indeksa-dubli.html). Сделанные тогда настойки и сейчас вроде все правильно отрабатывают — правильный каноникал и корректный запрет на индексацию в мета-теге роботс.

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

  17. 17. Александр | 13 апреля 2017

    Спасибо за информацию. У меня блоге тоже стоит All in One SEO Pack, первый пункт у меня был отмечен, а второй не был. Сейчас вот изменил настройки, посмотрим какие будут изменения.

  18. 18. Надежда | 13 апреля 2017

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

  19. 19. Наталья Краснова | 13 апреля 2017

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

  20. 20. Nobody0 | 14 апреля 2017

    Будьте внимательны с предлагаемым вами плагином!!!

    Он добавляет шортлинк (Зачем?) и каноникал принудительно, если стоит сео плагин то их становиться по 2.

    Одни дубли убирает — другие создает, чтоб не обидно было =)

  21. 21. Sosnovskij | 14 апреля 2017

    Дмитрий, привет! Не говорил, что новая проблема в принципе. Новая для меня и тех, кто не замечал ее :) Да, это именно wordpress генерирует такие страницы. Они попадают в индексе, то удаляются из него. Это не хорошо.
    Надежда, все правильно. Им каноническими быть нельзя, так как они являются дублями :)
    Nobody0, посмотрел. Действительно, есть такое. На мой взгляд, менее критично, но, да, недоработка (или переработка). Добавил информацию в пост.

  22. 22. Ольга | 15 апреля 2017

    Получается, если у меня не стоит плагин All in One SEO Pack, я должна поставить для решения проблемы плагин After Last Page Fix? А к чему приводят его недостатки ( дубль rel=canonical и shortlink)?

  23. 23. Sosnovskij | 17 апреля 2017

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

  24. 24. Ignab | 20 апреля 2017

    У меня все в порядке, пока дублей не обнаружил (хотя и сайт молодой), стоит yoast. Заметил опечаточку: «Добавлялось и удалось сотни подобных «постов».»

  25. 25. Sosnovskij | 23 апреля 2017

    Ignab, спасибо, поправил :)

  26. 26. Ольга | 26 апреля 2017

    Sosnovskij, подскажите, как понять, открыты ли они для индексации? Какая должна быть строчка в robots, которая их закрывает?

  27. 27. Светлана | 28 апреля 2017

    Не поняла. «Постраничная навигация отдельных постов» — это про многостраничные посты речь? Что правда, у кого то есть такие? Ну тогда писатели, ну тогда глыбы! )))

    У меня сейчас свежий WordPress 4.7.4 плюс SEO by Yoas — никаких дублей в никаких ПС нет.

  28. 28. Sosnovskij | 28 апреля 2017

    Светлана, да, только эти многостраничные посты, а точнее сами страницы навигации, создаются автоматически.

css.php Подняться наверхПодняться наверх