FC2ブログでタイトルタグの重複対策(備忘録)
「タイトルタグの重複」と聞いてもわからない人はスルーしちゃって下さい。
こんな事に試行錯誤するより、知らない人は知らないまま真面目にブログを更新していた方がアクセスアップに繋がると思いますので。
でも、ウェブマスターツールに登録して、一度気になリ始めてしまったらもう簡単には抜け出せないんですよね…。
そんなワケで、私が行った重複対策を備忘録として残しておこうと思います。後で、ここはどういう意図でこうしたんだっけ?となると、また調べなおさないといけないので(汗)
全体的に、「ありのごとくあつまりて」というブログの「ウェブマスターツール 重複エラー対策のまとめ」を参考にしました。
【このブログで行ったPCテンプレートへの対策】
<!--▽タイトルタグ▽-->
<title>
<!--titlelist_area-->全記事一覧<!--/titlelist_area-->
<%sub_title>|<%blog_name> <%cno>
<!--index_area-->|サブタイトル的なもの<!--/index_area-->
<!--not_index_area-->
<!--not_titlelist_area-->
<!--not_permanent_area-->
<!--not_search_area-->
<!--topentry-->.<%topentry_no><!--/topentry-->
<!--/not_search_area-->
<!--/not_permanent_area-->
<!--/not_titlelist_area-->
<!--/not_index_area-->
</title>
<!--▽メタデータ▽-->
<!--index_area-->
<meta name="description" content="<%introduction>">
<!--/index_area-->
<!--▽正規化▽-->
<!--index_area--><link rel="canonical" href="<%url>"><!--/index_area-->
<!--permanent_area--><link rel="canonical" href="<%url>blog-entry-<%pno>.html"><!--/permanent_area-->
<!--titlelist_area--><link rel="canonical" href="<%url>archives.html"><!--/titlelist_area-->
上記は修正前の状態です。追記でちょこちょこ変更してるので注意。あと、XHTMLの場合は、「meta」や「link」は「 />」で閉じます。
まず、seo的に重要とされる「title」です。
- 1、<!--titlelist_area-->全記事一覧<!--/titlelist_area-->
- 「(ブログURL)/archives.html」で表示される記事タイトルの一覧ページだとわかるようにします。
- 2、<%sub_title>|<%blog_name> <%cno>
- ブログ名(blog_name)はどのページにも表示。「sub_title」はページエリアによって内容が変わる変数で、カテゴリページではカテゴリ名、個別記事ページでは記事タイトル、月別アーカイブページでは年月、検索結果ページでは検索単語、タグ検索結果ページではユーザータグが表示されます。
そして「cno」はカテゴリページでカテゴリ番号を表示します。FC2ブログでは削除されたカテゴリページもURLを入力すれば空のページとして表示されてしまい、過去にインデックスされたカテゴリページがあるとタイトルタグの重複で注意される事が多いのですが、カテゴリ番号をタイトルに含める事で重複を防げます。 - 3、<!--index_area-->|サブタイトル的なもの<!--/index_area-->
- 他にブログ名しか表示できないエリアがあるので、「index_area(トップページ)」のタイトルを区別します。「イラストつき映画感想ブログ」のようにブログのサブタイトル的なものを書いて下さい。
また、ページ送りから戻ってくるとトップページが「index_area」ではなくなってしまうため、ページ送りの戻る(<!--prevpage-->)のリンクに「rel="nofollow"」を設定してクロールされるのを防ぎます。 - 4、<!--not_index_area--><!--not_titlelist_area--><!--not_permanent_area--><!--not_search_area--><!--topentry-->.<%topentry_no><!--/topentry--><!--/not_search_area--><!--/not_permanent_area--><!--/not_titlelist_area--><!--/not_index_area-->
- 長ったらしいですが、トップページでも全記事一覧ページでも個別記事ページでも検索結果ページでもなく、繰り返しエントリーが表示されるページというのは、カテゴリー別ページ、月別アーカイブページ、検索結果ページ、タグ検索結果ページ、その他のページ(トップページからページ送りで移動して、戻った時のページpage-0.html)の事です。「topentry_no」で繰り返し表示される記事の番号をすべて表示し、ページ送りのあるエリアの重複を防ぎます。
また、ブログ設定で月別アーカイブ・カテゴリ・検索結果ページなどの1ページの表示件数を最大にするなど、ページ送りを作らないことも大切です。 - 5、<!--edit_area-->コメント no.<%eno><!--/edit_area-->
- 投稿したコメントを後から編集する時に表示されるページで、コメントごとに割り振られる番号を表示させます。
…が、そもそもこんなページをインデックスされても仕方がないので、「comment_edit_link」のリンクに「rel="nofollow"」を追加。
また、そのリンクタグ全体を<!--comment_edit-->~<!--/comment_edit-->で囲み、編集用パスワードを設定したコメントしかリンクが表示されないようにしましょう。
ウェブマスターツールでコメント編集ページに対する警告が出なければ、5の記述は必要ないと思います。
<追記:2015/3/10>
非公式扱い?みたいですが、何ページ目か表示できる変数を発見したので、2を修正、4を削除しました(ある日突然使えなくなる可能性もあります)。2の変更後は以下のようになります。
<%sub_title><!--not_index_area-->
<!--not_permanent_area-->
<!--not_titlelist_area-->
<%current_page_num>ページ目<%cno>
<!--/not_titlelist_area-->
<!--/not_permanent_area-->
<!--/not_index_area--> <%blog_name>
<追記:2015/3/17>
実はこれでも「blog-category○.html」と「category○-0.html」で重複が発生します。苦肉の策としては、ぐーぐる先生的には正しくない正規化する方法が使えそう?なので、正規化のところで説明します。
次にメタデータ「description」です
これはぐーぐる検索でタイトルの下に表示される160文字程度のページ説明を指定するものです(必ずしも使われない)。
FC2では、全ページに「introduction」(環境設定でブログの説明として指定した文)が表示されるようになっている事が多く、そのままだと先生に「重複してるよ」と注意されてします。私のブログの場合は、先生に任せておいた方が検索した人にとってわかりやすい内容が表示されるので、トップページのみに指定してます。
ちなみに、「meta keywords」はスパムサイトが悪用するので、もう先生がサポートするのをやめたそうです。邪魔なので、即削除しました。
そして最後にURLの正規化についてです。
これは、ほとんど同じ内容のページでありながらURLが違うページを、1つのURLを指定して「これが正しいURLですよ」とクローラーに教えるものです。
。
- 1、トップページ(index_area)
- 何種類かのURLでアクセスできるようになっている事が多いので「<%url>」に正規化。
- 2、個別記事ページ(permanent_area)
- コメントした後の「戻る」リンクでURLが変わってしまうので「<%url>blog-entry-<%pno>.html」に正規化。
- 3、全記事一覧ページ(titlelist_area)
- archives.htmlとall.htmlの二種類のURLがあるので、片方に正規化。ページ送り対策にもなる。
(追記:2015/6/23)現在は、全テンプレートで1と2のみ設定し、それ以外の場所はすべてインデックス拒否しています。重複対策でインデックス拒否する事は推奨されてませんが、これは検索する人にとって価値のないページをインデックスから除外するための処置です。このブログでは主に映画の感想を記事にしており、検索で来る人は「タイトル名 ネタバレ」などで検索するため、カテゴリやアーカイブページも検索結果に現れると、別の映画のネタバレしか書いてない場合でも引っかかってしまいます。なので、検索する人にとっては邪魔なページという事でインデックス拒否しました。
<追記:2015/3/17>カテゴリページ対策
ページ数を表示する「%current_page_num」を使い、カテゴリページで「category○-○.html」の形に正規化します。ただし、「%current_page_num」では何故かURLのページ数とは違い、ゼロページ目が存在しません。そのため、この方法ではカテゴリのトップページ(「blog-category○.html」と「category○-0.html」)は「category○-1.html」に正規化、次のページ(「category○-1.html」)は「category○-2.html」に正規化というふうに、一つづつずれて正規化します。元々ページ送りのあるエリアでは、何ページ目に何の記事があるかは、記事数が増えるごとに変わっていくので、おそらく大きな問題にはならないでしょう。この方法だと、削除したカテゴリページで「category○-.html」とハイフンで終わる間違ったURLになってしまうことに気付きました…。なので、普通に各カテゴリのトップに正規化する方法しかないようです。
<!--category_area--><link rel="canonical" href="<%url>category<%cno>-<%current_page_num>.html">
<link rel="canonical" href="<%url>-category-<%cno>.html">
<!--/category_area-->
<追記:2015/5/19>月別ページ対策
スマホページも重視されるようになってから、月別ページの重複もでてきたので正規化することにしました。重複ページがなくなってから(←待つ必要はないです。というかnoindexしないとなくならない)「noindex, follow」に変えようと思います。
<!--date_area-->
<link rel="canonical" href="<%url>blog-date-<%now_year><%now_month>.html">
<!--/date_area-->
【スマートフォンテンプレートへの対策】
スマートフォン版・タイトルについて
<!--▽タイトルタグ▽-->
<title><%sub_title>
<!--page_area-->
<%current_page_num>ページ目<%cno>
<!--/page_area-->「<%blog_name>」スマフォ版</title>
「page_area(トップ、カテゴリ、月別アーカイブページ)」ではブログタイトルと「sub_title」、何ページ目かを表示。
その他、「戻る」リンクなどURL中に「?sp」のパラメータがついたもの(末尾の場合は「?sp」削除)や、コメント、TBへのリンク、コメント編集、ページ送りの「prevpage_area」へのリンクに「rel="nofollow"」追加。
スマートフォン版・正規化について
fc2ブログでは、スマホでアクセスすればスマホ版ページが自動的に表示されますが、スマホ版ページはURL末尾にパラメータがつくため、正規化しておかないとPC版と同じ内容でも別のページとしてインデックスされてしまいます。するとタイトルタグの重複で注意されるだけでなく、PCで検索した時にスマホ版のページが上位にきてしまうこともあり、seo的に良くありません。
そのため重要なページはPC版に正規化しつつ、余計なページはインデックス拒否するといいでしょう。
<!--▽正規化▽-->
<!--index_area--><link rel="canonical" href="<%url>" /><!--/index_area-->
<!--not_index_area-->
<!--not_category_area-->
<!--not_date_area-->
<!--not_spplugin_area-->
<link rel="canonical" href="<%url>blog-entry-<%pno>.html" />
<!--/not_spplugin_area-->
<!--/not_date_area-->
<!--/not_category_area-->
<!--/not_index_area-->
<!--category_area-->
<link rel="canonical" href="<%url>blog-category-<%cno>.html" />
<!--/category_area-->
<!--date_area-->
<link rel="canonical" href="<%url>blog-date-<%now_year><%now_month>.html">
<!--/date_area-->
すでに重複を注意されている場合、cm、tb、formと、スマホ版とPC版のカテゴリページの重複がほとんどだと思います。なのでトップページと個別記事以外をインデックス拒否するか、cm、tb、formはpc版個別ページに、カテゴリページはPC版に正規化します。カテゴリはPC版と同じくページごとに正規化しても構いません。
スマートフォン版・インデックス拒否について
<!--▽インデックス拒否▽-->
<!--not_index_area-->
<!--not_permanent_area-->
<meta name="robots" content="noindex,follow" />
<!--/not_permanent_area-->
<!--/not_index_area-->
最近は価値の低いページがサイト全体の評価を下げるようなので、トップと個別ページ以外を全てインデックス拒否してしまうのが手っ取り早いでしょう。スマホ版でそれらのページに被リンクをもらうことはほとんどないと思われます。
ウェブマスターツールのurlパラメータの設定
Googleウェブマスターツールの「URLパラメータ」の使い方のページを参考にしました。スマホ版のURLはほとんどパラメータがついており、それが重複の原因にもなっています。そのパラメータがどんな意味を持っているのか、クロールする価値があるのかを伝える事で、ぐーぐる先生が効率よく的確にインデックスできるようになるようです。
とりあえず以下のように設定。他の検索エンジンには影響ありません。
rno(コメント編集):「指定する内容」→「クロールしない」
page(ページ送りのあるエリア):「ページ指定」→「Googlebot が決定」
cat(カテゴリ)、date(月別):「絞込み」→「Googlebot が決定」
m2(cm、tb、form)、no(個別ページ):「指定する内容」→「Googlebot が決定」
<追記>
やっぱりfc2ブログで重複を完全になくすには、トップページと個別記事以外を全てnoindexするしかないね…。上の状態になってから数ヶ月。noindexしたからと言ってマイナスになることは何もなかったし、ブログ名で検索した時にサブのリンク?がほとんど表示されなくなったものの、ブログ名で検索する人なんていないしなぁ。
こんな事に時間を費やすくらいなら、サクっとnoindexしてコードもスッキリ、気分もサッパリした方がいいと思います。