Latest work





Плагин Yoast SEO доработка вывода тегов “каноникал” и “robots”
Техническое задание.
Очередные проблемы после обновления плагина Yoast SEO, в индекс Гугла урлы лишние попали, пример:
https://yablukom.ua/semena-podsolnechnika/page/2/?orderby=price-desc , каноникал должен быть https://yablukom.ua/semena-podsolnechnika/ Касается всех урлов с параметрами и пагинацией на категориях товаров, а еще с таких страниц надо убрать тег
<meta name=”robots” content=”index, follow” /> т.к. он стоит выше каноникла и имеет приоритет.
Выполнение задания.
Немного порывшись в интернете нашел интересную документацию по хукам плагина Yoast SEO Version 4.7.1, и она мне сильно помогла в написании фильтров под нужды заказчика.
Yoast SEO Filters By Team Yoast http://hookr.io/plugins/yoast-seo/4.7.1/filters/#index=a
Я дописал две функции в functions.php, подключил их к нужным фильтрам плагина Yoast SEO, которые решили все проблемы заказчика.
//23.09.2020 Удаляем meta name="robots" для страниц с пагинацией и с параметрами типа filters, orderby
function an_filter_robots( $robots ) {
if (is_paged() || (count($_GET) > 0)) {
$robots = '';
}
return $robots;
}
add_filter( 'wpseo_robots', 'an_filter_robots', 10, 1 );
//23.09.2020 Изменяем link rel="canonical" для страниц с пагинацией и с параметрами типа filters, orderby
function an_filter_canonical_pagenum( $canonical ) {
$canonical = parse_url(get_pagenum_link(0));
$canonical = $canonical['scheme'] . '://' . $canonical['host'] . $canonical['path'];
return $canonical;
}
add_filter( 'wpseo_canonical', 'an_filter_canonical_pagenum',10, 1 );
На странице https://yablukom.ua/semena-podsolnechnika/?filters=fakticheskaya-urozhaynost[2992]&orderby=price-desc видно, что canonical
нормальный, а тега robots
нет:
а на основной https://yablukom.ua/ua/semena-podsolnechnika/ тег robots
присутствует, а также в canonical
есть языковой домен:
Вот скриншот отзыва заказчика: