プログラムとその他いろいろメモ

WordPressで特定カテゴリのページにnoindexを付ける方法

noindexを付ける方法

特定カテゴリとそのカテゴリに属する投稿ページにnoindexを付ける方法を記しておきます。

functions.phpに以下のコードを貼り付けカテゴリIDの所を目的の物と入れ替えて保存してください。

// 特定カテゴリとそのカテゴリに属するページにnoindexを付ける
function set_noindex()
{
	//カテゴリ一覧ページなら
	if ( is_category() )
	{

		if ( is_category( 'カテゴリID1' ) or is_category( 'カテゴリID2' )  )
		{
			echo '<meta name="robots" content="noindex" />';
		}
	}

	//投稿のページなら
	if ( is_single() )
	{
		if ( in_category( 'カテゴリID1' ) or in_category( 'カテゴリID2' )  )
		{
			echo '<meta name="robots" content="noindex" />';
		}
	}
}
add_action('wp_head', 'set_noindex');

カテゴリIDの取得の仕方

カテゴリIDを取得するには、まずダッシュボード>カテゴリで表示されるカテゴリ一覧画面に行きます。
そこで目的のカテゴリをクリックするとカテゴリを編集する画面に移動するのですが、この時のURLに注目。
そのURLパラメータのcategory&tag_ID=の後の数字がカテゴリIDです。

命令の解説

is_single()  ・・・投稿のページならTRUEを返す
in_category() ・・・変数でカテゴリIDを入れ、そのカテゴリを持つページならTRUEを返す
is_category() ・・・カテゴリ一覧のページならTRUEを返す。変数でカテゴリIDを入れれば、そのカテゴリIDを持つ物ならTRUEを返す。

モバイルバージョンを終了