2023年11月15日水曜日

Wordpress 特定のページのみ検索エンジンに登録させない meta文の追加

 特定のページだけに<meta name="robots" content="noindex"> を追加する。
プラグインを使わずに特定のページのみmeta文を追加する。

編集するファイル
/wp-content/themes/(テーマ名)/function.php
/wp-content/themes/(テーマ名)/header.php

■function.php

// 特定ページの検索登録拒否

function echo_meta_tag() {
  if ( is_single('ページのID') ) {
    echo '<meta name="robots" content="noindex" />' . "\n";
  }
}

ページのIDにはmeta文を追加したいページのIDを入力する。
IDでなくてもタイトルやスラッグでもよい。複数の場合は

is_single(array(10, 'title', 'slag'))

のように記述。

条件によってはis_single()ではなくis_singular()とかis_page()を利用すればいいんじゃないですかね。知らんけど。


■header.php

meta文を表示したい場所に下記コードを追記する

<?php echo_meta_tag(); ?>


既に登録されているものについては、削除申請(GoogleSearchConsoleなどで)する。robotsについては検索エンジン側が対応するかどうかなので、これだけではどうにもならん場合もあるよ。