wp_robots
Дозволяє додати або видалити директиви мета-тегу robots.
Мета-тег robotsвиводиться в частині HEAD сторінки. Приклад:
<meta name='robots' content='директива, директива'> <!-- наприклад --> <meta name='robots' content='noindex, follow, max-image-preview:large' />
Якщо в результаті роботи фільтра буде отримано порожній масив (функція поверне порожній масив), мета-тег robots не буде виведений.
Читайте також: Robots API в WodPress .
Дивіться можливі директиви мета-тегу robots:
Використання
add_filter( 'wp_robots', 'wp_kama_robots_filter');
/**
* Function for `wp_robots` filter-hook.
*
* @param array $robots Associative array of directives. Кілька ключів повинні бути як directive, так і відповідні значення повинні бути ними, як string, що надається як значення для directive або boolean `true` if it is boolean directive, тобто без значення.
*
* @return array
*/
function wp_kama_robots_filter( $robots ){
// Filter...
return $robots;
}- $robots
(масив) - Асоціативний масив із парами
[ директива => значение ]. У ключі вказується назва директиви. Значення може бути
строкойякщо це директива зі значенням або
trueякщо це логічна директива (не має значення).
Приклади
#1 Закриємо від індексації різні сторінки сайту
add_filter( 'wp_robots', 'wp_kama_robots_tag');
function wp_kama_robots_tag( $robots ){
// закриємо сторінки вкладень, пагінації та архівів записів
if(
is_attachment() ||
is_paged() ||
is_post_type_archive()
) {
$robots['noindex'] = true;
}
// закриємо таксономії, якщо для термінів не зазначено опис
if(
( is_category() || is_tag() || is_tax() )
&&! trim( get_queried_object()->description )
) {
$robots['noindex'] = true;
}
// закриємо сторінки з параметром запиту ?filter
if( isset( $_GET['filter'] ) )
$robots['none'] = true;
return $robots;
}#2 Видалимо наявні директиви
Припустимо, якийсь плагін закриває від індексації сторінки, які не потрібно закривати. Виправимо це:
add_filter( 'wp_robots', 'wp_kama_robots_tag');
function wp_kama_robots_tag( $robots ){
// видалимо небажану директиву
unset($robots['noindex']);
return $robots;
}
список змін
| З версії 5.7.0 | Введено. |
Де викликається хук
wp_robots
Де використовується хук у WordPress
wp-includes/default-filters.php 258
add_filter( 'wp_robots', 'wp_robots_noindex');
wp-includes/default-filters.php 259
add_filter( 'wp_robots', 'wp_robots_noindex_embeds' );
wp-includes/default-filters.php 260
add_filter( 'wp_robots', 'wp_robots_noindex_search');
wp-includes/default-filters.php 261
add_filter( 'wp_robots', 'wp_robots_max_image_preview_large');
wp-includes/default-filters.php 356
add_filter( 'wp_robots', 'wp_robots_no_robots');
wp-includes/functions.php 3788
add_filter( 'wp_robots', 'wp_robots_no_robots');
wp-login.php 45
add_filter( 'wp_robots', 'wp_robots_sensitive_page');
wp-signup.php 6
add_filter( 'wp_robots', 'wp_robots_no_robots');