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
Використання не знайдено.