Разбираемся, как убрать Yoast SEO Canonical в популярном СЕО-плагине. Рассмотрим 2 рабочих способа.
Известно, что популярный плагин Yoast SEO на страницах пагинации выводит canonical-ссылки /page/2/, /page/3/ и т.д. В следствии того, что к каноническим ссылкам разные поисковые системы относятся неодинаково, то лучшей практикой будет заменить их на ссылку, ведущую на основную страницу пагинации.
Canonical URL – что это?
Атрибут rel=”canonical” используется в исправлении дублей страниц. Обычно эту проблему решают редиректы (перенаправления). Но если страницы нужны для просмотра пользователями, то на помощь приходит этот атрибут.
Как изменить canonical на страницах пагинации?
Разберем 2 варианта решения проблемы.
Способ 1. Плагин Clearfy Pro
Наиболее корректным и правильным способом будет воспользоваться премиум-плагином Clearfy Pro. Для этого следует просто перейти в раздел Clearfy Pro, затем на вкладке SEO отметить опцию Canonical на страницах пагинации.
Активировать промокод на 15%
Способ 2. Файл functions.php
Есть еще один способ замены ссылок canonical – редактирование файла functions.php.
Если Вы не желаете вносить какие-либо правки в файл functions.php, то в этом случае Вам поможет плагин ProFunctions.
Итак, в конец указанного файла Вашей активной WordPress-темы следует добавить следующий PHP-код:
function wpschool_canonical_redirect() { if( is_singular() && !is_front_page() ) { global $post, $page; $num_pages = substr_count( $post->post_content, '<!--nextpage-->' ) + 1; if( $page > $num_pages || $page == 1 ) { wp_safe_redirect( get_permalink( $post->ID ), 301 ); exit(); } } } add_action( 'template_redirect', 'wpschool_canonical_redirect' );
Нажмите, пожалуйста, на одну из кнопок, чтобы узнать понравилась статья или нет.
Проблема в том что через плагин не получается сделать каноникал, + кусок кода кладет сайт(
через yoast тоже пытался но чет не получается https://hakuna.pro/
Тоже самое. Н главной есть rel=canonical, но и на страницах пагинации тоже он есть))) Голову уже сломал https://shilkins.ru/
Проверил ваш второй вариант через functions.php – не работает на сайте https://minecraft-zet.ru/
И у меня тоже на главной rel=canonical на сайте e-news24.ru. Пробовал двумя способами не помогло. Хоть бери и сноси yoast.
У меня на справочнике https://gispage.kz/ тож код не сработал. Но на другом сайте нашел код, который использует фильтр плагина Yoast SEO – там просто с помощью замены убирают всё лишнее с ссылки. Только я его проверить не могу из-за недостатка страниц в рубриках. Может кто потестит 🙂 Код:
add_filter('wpseo_canonical', 'removeCanonical'); function removeCanonical($link) { $link = preg_replace('#\\??/page[\\/=]\\d+#', '', $link); return $link; }