WordPressのカテゴリーページをnoindexするべきかどうかについては賛否両論ありますが、この記事ではその議論は置いておいて、noindexしたいという方のためにその方法をご紹介します。
カテゴリーページのみnoindexする場合
ヘッダーテンプレート(header.php)のhead~/headの中の下記の部分に、11~13行目のコードを追加すればOKです。
<head> <meta charset="<?php bloginfo( 'charset' ); ?>" /> <meta name="viewport" content="width=device-width" /> <title><?php wp_title( '|', true, 'right' ); ?></title> <link rel="profile" href="http://gmpg.org/xfn/11" /> <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" /> <?php // Loads HTML5 JavaScript file to add support for HTML5 elements in older IE versions. ?> <!--[if lt IE 9]> <script src="<?php echo get_template_directory_uri(); ?>/js/html5.js" type="text/javascript"></script> <![endif]--> <?php if(is_category()): ?> <meta name="robots" content="noindex" /> <?php endif; ?> <?php wp_head(); ?> </head>
11行目で「もし表示するページがカテゴリーぺージなら~」という条件分岐をし、
12行目でメタタグのnoindexを記述。
13行目で条件分岐を終了させています。
noindex,nofollowする場合
ほぼ同じです。ヘッダーテンプレート(header.php)のhead~/headの中の下記の部分に、11~13行目のコードを追加すればOKです。
<head> <meta charset="<?php bloginfo( 'charset' ); ?>" /> <meta name="viewport" content="width=device-width" /> <title><?php wp_title( '|', true, 'right' ); ?></title> <link rel="profile" href="http://gmpg.org/xfn/11" /> <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" /> <?php // Loads HTML5 JavaScript file to add support for HTML5 elements in older IE versions. ?> <!--[if lt IE 9]> <script src="<?php echo get_template_directory_uri(); ?>/js/html5.js" type="text/javascript"></script> <![endif]--> <?php if(is_category()): ?> <meta name="robots" content="noindex,follow"/> <?php endif; ?> <?php wp_head(); ?> </head>
アーカイブページ全てをnoindexする場合
こちらもif文の条件をカテゴリーページからアーカイブページに変更するだけです。11~13行目のコードを追加すればOKです。
<head> <meta charset="<?php bloginfo( 'charset' ); ?>" /> <meta name="viewport" content="width=device-width" /> <title><?php wp_title( '|', true, 'right' ); ?></title> <link rel="profile" href="http://gmpg.org/xfn/11" /> <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" /> <?php // Loads HTML5 JavaScript file to add support for HTML5 elements in older IE versions. ?> <!--[if lt IE 9]> <script src="<?php echo get_template_directory_uri(); ?>/js/html5.js" type="text/javascript"></script> <![endif]--> <?php if(is_archive()): ?> <meta name="robots" content="noindex" /> <?php endif; ?> <?php wp_head(); ?> </head>