ブログ

WordPress 自動で吐き出される「meta name=”robots” ~」のタグを非表示にしたい

     

結論から言うと、functions.php内に以下のタグを挿入することで、本来自動で吐き出されるタグを非表示にできます。

// ▼ 検索エンジンロボットの非表示
remove_filter( 'wp_robots', 'wp_robots_noindex' );
remove_filter( 'wp_robots', 'wp_robots_noindex_embeds' );
remove_filter( 'wp_robots', 'wp_robots_noindex_search' );
remove_filter( 'wp_robots', 'wp_robots_max_image_preview_large' );

詳細状況

  • カテゴリー・カスタム投稿・投稿ページの重複コンテンツを条件分岐にて排除する設定を自分で個々にしたかった。
  • <?php wp_head(); ?> タグの中で自動的に以下のタグが吐き出されてしまう。ので、自動で吐き出されるタグを非表示にしたい。
    <meta name=’robots’ content=’max-image-preview:large’ />

補足

wp_headの中身がWordpress内のどこに記載されているのか調べたところ、wp-includes\default-filters.phpの245行目にありました。

// Robots filters.
add_filter( 'wp_robots', 'wp_robots_noindex' );
add_filter( 'wp_robots', 'wp_robots_noindex_embeds' );
add_filter( 'wp_robots', 'wp_robots_noindex_search' );
add_filter( 'wp_robots', 'wp_robots_max_image_preview_large' );

add_filterとあったたため、functions.phpにてremove_filterの設定をしたところ、非表示にできました。