n-wp.ru — блог о WordPress

Как удалить rel=»canonical» из кода страницы

Запрет на автоматическое встраивание ссылки вида link rel=canonical и объяснение, зачем это нужно.

Для начала, чтобы понять, зачем это мне понадобилось, ознакомьтесь с моей перепиской с Яндексом.

Я пишу в Яндекс:

Здравствуйте!
У меня есть многостраничная запись, разбирая на 3 части:

  • http://сайт/10634
  • http://сайт/10634/2
  • http://сайт/10634/3

WordPress позволяет так сделать — разделить большую запись на три части. Первая часть проиндексировалась без проблем, а вот вторая и третья не в индексе. Что бы я ни делал, эти части не попадают в индекс. Почему так происходит и что мне сделать?

На что Яндекс Мне отвечает:

В HTML-коде этих страниц есть следующий тег:

Это указание на то, что данная страница является неглавным дублем сайт/10634 и показывать в поиске ее не нужно ( http://help.yandex.ru/webmaster/?id=1111858#canonical ). Уберите этот тег и проблема со временем решится.

При разбивке на несколько частей, WordPress в код страницы автоматически встраивает в код страницы link, указывающий, что эта страница является дублем другой, причем еще и не главным. А для поискового робота Яндекса такое указание является рекомендацией не посещать эту страницу, а перейти на ту, которая указана, как главная копия. Я решил исправить это, запретив вообще добавлять ссылки на главные копии.

Для того, чтобы запретить вордпрессу автоматически вставлять ссылку вида link rel=»canonical», нужно открыть файл functions.php, и добавить в него

Я вот думаю: может разработчики WordPress сделают раздел в настройках, в котором можно было бы отмечать, какие ссылки должны автоматически добавляться в код страницы, а какие нет? А то получается, слишком много ссылок добавляются в код без моего ведома.

6 комментариев

  • Бяка, я использую свою постраничную навигацию. Все OK.
    /page/2 и т.п. в поиске Яши.

  • Цитирую вас же:
    «У меня есть многостраничная запись»
    Сторонние плагины обычно присваивают 1 и тот же каноник (http://сайт/10634) для
    * http://сайт/10634
    * http://сайт/10634/2
    * http://сайт/10634/3
    Что и было у вас. Т.е. Яша склеил страницы.

    Я использую paginate_links (API) с небольшими поправками. И у меня такой проблемы слава богу нет.

  • подскажите пожалуйста — куда именно вставлять в файле functions.php:

    после какой именно строки — просто там множество подфункций и условий — ПОМОГИТЕ
    очень надо!

    спасибо

  • я же правильно понял — речь идёт о функции темы?
    ….вставляю, а все равно (link rel=»canonical» href= ) появляется

  • На самом деле это скорее проблема Яндекса. WordPress имеет большу’ю долю в интернете, а задача Яндекса искать релевантную информацию. То, что он не дружит с организацией самой популярной CMS, делает его поиск хуже, чем у тех, кто подстраивается под WordPress(я так понял у google проблем не было). Поэтому я не желаю что-то менять у себя, пусть Яндекс совершенствует своего бота.(я понимаю, что теряю посетителей, но всё же…)