プラグインなしでSEO対策。特定のカテゴリの投稿をnoindex(インデックスさせないように)にする。。

インデックスさせない

本当にいまさら感いっぱいではございますが、当サイトのPhotoカテゴリを検索エンジンにインデックスさせないようにしようと思い調べたことの覚書きです。

なぜ、インデックスさせないほうがいいと思ったか?

なぜ、Photoカテゴリをインデックスから除外しようと思ったかというと・・・

元々、このカテゴリでの投稿は、ねこもりやのココロに残った風景をクリップしていたもので、いわゆる文字テキストは入力していないわけで、昨今のコンテンツイズキングという考え方からは、正反対に位置するとんでもないコンテンツなわけです。

 

はっきり言うと、まったく意味がないページなわけです。

SEO的には、マイナスにこそなれ、プラスには決してならない訳ですよね。

特定のカテゴリをインデックスさせない

ということで、このカテゴリに属する個別記事ページは

<meta name=”robots” content=”noindex”>

と、こうなるようにしたいわけです。
ついでに、meta name=”robots”を設定してWordpressサイトのIndexを制御 |ウェブシュフを参考に、ページ送りの2ページ以降や、添付ファイルページ、 検索結果・404ページなどをノーインデックスにしました。
以下のタグをheder.phpの</head>タグの直前に入れればよいと思います。

<?php 
if( $paged >= 2 || $page >= 2){
$robots="noindex";
}
else if(is_attachment()) 
{
$robots="noindex";
}
else if(is_single()) 
{
if(in_category(カテゴリーID))
    {
    $robots="noindex";
    }
    else
    {
    $robots="index";
    }
}
else if(is_home() ||is_page() || is_category()||is_post_type_archive()) 
{
$robots="index";
}
else if(is_archive()||is_search()||is_404()) 
{ 
$robots="noindex";
}
?>
<meta name="robots" content="<?php echo $robots; ?>" />

カテゴリーIDは該当カテゴリーのIDを入れます。
カテゴリーIDの調べ方は以下で。

 

参考にしたページでは、もう少し複雑で、9行目のelse if(is_single())以降が、

else if(is_single()) 
{
$cates = get_the_category(); $cat = $cates[0];
$ancestors=get_ancestors($cat->cat_ID, 'category' );
$kosu=count($ancestors);
    if(get_cat_name($ancestors[$kosu-1]==41||$cat->cat_ID==41))
    {
    $robots="noindex";
    }
    else
    {
    $robots="index";
    }
}

と、なってました。

最初、楽したい一心でこちらにたどり着いたねこもりやは、大して考えもせず、コピペしてみて、勢い込んでソースを確認したところ、

<meta name=”robots” content=”index”>

と、インデックスされるようになっていました。

||||||||||凹[◎凸◎;]凹||||||||||ガビーン!

なので、無い知恵をまたまた絞ってみたら、こんな簡単なタグになってしまったのだけど、簡単すぎて不安。。。

 

特定のカテゴリの記事を除外しない場合

特に除外するカテゴリが無い場合はこちらで良いと思います。

<?php 
if( $paged >= 2 || $page >= 2){
$robots="noindex";
}
else if(is_attachment()) 
{
$robots="noindex";
}
else if(is_single()) 
{
$robots="index";
}
else if(is_home() ||is_page() || is_category()||is_post_type_archive()) 
{
$robots="index";
}
else if(is_archive()||is_search()||is_404()) 
{ 
$robots="noindex";
}
?>
<meta name="robots" content="<?php echo $robots; ?>" />

投稿後記

今回、こちらを参考にさせていただいて、思うようにnoindexとならなかったため、ソースとにらめっこすること数分(笑)。
「え、これでよくない?」と気付き、よりシンプルなソースにして見事実現しました。

今回の反省:盲目的にコピペで楽しようとするのは、考える力、生み出す力を激減させます。
ちょっと、考えればわかることも多いので手抜きしない!自分でちょっとは考えよう!

One comment Add yours

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA