WordPressで自動付与される「meta name=”robots” ~」を無効にする

WordPressで自動付与される「meta name=”robots” ~」を無効にする

うぇぶとまと / 雑食系エンジニア

テーマを自作するにあたってmeta name=”robots”~を調整する必要があり、調べたところ複数のやり方があったので備忘録として残しておきます。

結論から述べると、WordPressで自動付与されるmeta name=”robots”~を無効にする方法は以下2パターン、いずれかをfunctions.phpにコピペすればOKです。

「meta name=”robots”~」を無効にする方法①

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' );

「meta name=”robots”~」を無効にする方法①

function remove_wp_auto_robots() {
    add_filter('wp_robots', '__return_empty_array', 999);
}

add_action('init', 'remove_wp_auto_robots');

処理について補足

無効にしたかった背景としてはテーマを自作する時に<?php wp_head(); ?>から自動で吐き出される「meta name=”robots”~」が少し邪魔だったから。metaを追加して上書きしてもよかったんですが同種のmetaが複数あるのは個人的に嫌だったので無効にしました。

私の場合は全ての自動出力(meta robots)を停止させたかったので方法①と②どっちを使っても目的を達成することができます。特定のパターンの時だけ自動出力を停止させたい時は方法①を選ぶべし、詳細については下記の通り。

// noindexの自動出力を無効にする
remove_filter( 'wp_robots', 'wp_robots_noindex' );

// 埋め込みコンテンツのページでのnoindexを無効にする
remove_filter( 'wp_robots', 'wp_robots_noindex_embeds' );

// 検索結果ページのnoindexを無効にする
remove_filter( 'wp_robots', 'wp_robots_noindex_search' );

// image previewの自動出力を無効にする
remove_filter( 'wp_robots', 'wp_robots_max_image_preview_large' );
うぇぶとまと / 雑食系エンジニア

ChatGPTにも方法①と②どっちが良い?って質問したら「meta name=”robots”~」の自動出力を例外なく停止させたいなら②、柔軟にいくなら①って回答でした。とりあえず全部無効にするならどっちでもOKっす。

コメント (0)
うぇぶとまと|雑食系エンジニア
うぇぶとまと|雑食系エンジニア

飲食→派遣→IT系ベンチャーに転職。
本業をベーシックインカムとし、やりたい事に挑戦する雑食系エンジニア。