Yoast Logo

Yoast SEO: свои приоритеты страниц в XML карте сайта

Очень странным для меня в WordPress оказалось отсутствие каких-либо намеков на SEO — оптимизацию. Пришлось искать дополнения. Поставил себе Yoast SEO и в принципе пока доволен. Есть все необходимое. Единственное, что мне не понравилось, так это ранжирование постов в sitemap.xml. Так как посты — основной контент моего сайта, то приоритет 60% для поста меня крайне не устраивал.

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

This was indeed removed for individual posts and pages. Instead you would need to set a filter.

Ну фильтр, так фильтр.

Необходимая функция нашлась в файле /wp-content/plugins/wordpress-seo/inc/class-sitemaps.php

Открываем, ищем там функцию:

В первом условии IF мы видим, что страницам ($post->post_type == 'page') с нулевым уровнем вложенности ($post->post_parent == 0) отдается приоритет 0.8. И ничто не мешает нам добавить свое условие, только для записей блога. Модифицированная функция будет выглядеть так:

Три важных замечания:

  1. Данная статья актуальна для версии Yoast SEO 2.3.5. Хотя, я сильно сомневаюсь, что что-то кардинально изменится в последующих версиях.
  2. Чтобы обновить карту сайта сразу после данных манипуляций, выключите и заново включите XML карту сайта в настройках Yoast SEO.
  3. После обновления плагина наша модификация канет в Лету. Так что не забудьте дописать пару строк своего кода в обновленный плагин.

Разработчикам спасибо! Страница плагина: https://yoast.com/wordpress/plugins/seo/

Реклама:

Читайте также

Параметры mailto Знаете ли вы, что в ссылке типа mailto:somebody@mailserver.ru можно передавать параметры? А в то время, когда аудитория ваших сайтов все чаще использу...