wpseo_robots_array
Дозволяє змінити масив з meta robots у плагіні Yoast SEO перед їх використанням.
Ще раніше відпрацьовує фільтр wpseo_robots , який працює з meta robots у вигляді рядка.
Використання
add_filter( 'wpseo_robots_array', 'wp_kama_wpseo_robots_array_filter', 10, 2);
/**
* Function for `wpseo_robots_array` filter-hook.
*
* @param array $robots The meta robots directives to be used.
* @param Indexable_Presentation $presentation The presentation an indexable.
*
* @return array
*/
function wp_kama_wpseo_robots_array_filter( $robots, $presentation ){
// Filter...
return $robots;
}- $robots
(масив) - Директиви meta robots, які будуть використані (виведені на сторінці).
- $presentation
( Indexable_Presentation ) - Об’єкт класу.
Приклади
#1 Заборонимо індексацію сторінок пагінації
За замовчуванням Yoast SEO дозволяє індексувати сторінки пагінації та наполягає робити саме так, пояснюючи своє рішення у статті Pagination & SEO: best practices .
На сторінці пагінації до фільтру приходить наступний масив з директивами meta robots
Array ( [index] => index [follow] => follow [max-snippet] => max-snippet:-1 [max-image-preview] => max-image-preview:large [max-video-preview] => max-video-preview:-1 )
А в коді самої сторінки пагінації буде виведена мета тег:
<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
Заборонимо пошуковим системам індексувати сторінки пагінації, змінимо масив:
add_filter( 'wpseo_robots_array', 'set_noindex_for_paged');
function set_noindex_for_paged( $robots ) {
if ( is_paged() ) {
$robots['index'] = 'noindex';
}
return $robots;
}Масив зміниться:
Array ( [index] => noindex [follow] => follow [max-snippet] => max-snippet:-1 [max-image-preview] => max-image-preview:large [max-video-preview] => max-video-preview:-1 )
Зміниться і мета тег, що виводиться на сторінці пагінації:
<meta name='robots' content='noindex, follow' />
Як бачимо, завдяки параметру noindex плагін Yoast SEO автоматично модифікував мета тег, видаливши параметри, що не відповідають поточному стану.
Де викликається хук
return apply_filters( 'wpseo_robots_array', array_filter( $robots ), $this );
Де використовується хук в Yoast SEO
Використання не знайдено.