ブログ - d3blog と google ウェブマスターツール

d3blog と google ウェブマスターツール

カテゴリ : 
要望・アイデアメモ
執筆 : 
masa 2011/6/12
検索エンジンのサイト登録状況を確認するために google のウェブマスターツールを使っている人は多いと思う。

d3blog のコンテンツを google がクロールすると
診断 - HTMLの候補
に「タイトルタグの重複」が複数検出されてしまう。
これは d3blog が、カテゴリ別一覧や年月別一覧からの個別エントリーへのURLにいくつかパラメタを追加してしまうためだ。
たとえば、このサイトで最もアクセス数の多いページ
http://xcl.masa-lab.net/modules/d3blog/details.php?bid=58 (Smarty のテンプレートで配列を定義する)
のカテゴリは 「開発用メモ » その他」(cid=21) であり、このカテゴリのエントリー一覧画面から上記のエントリーを開くと
http://xcl.masa-lab.net/modules/d3blog/details.php?bid=58&cid=21
という具合に、後ろにcid=21 が追加されてしまう。
google さまは、「別のURLなのに同じタイトルが付いている!」といって警告しているのだ。

気にしなければいいのだろうが何となく気になってしまうので、これを回避する方法を考えてみた



(1) google ウェブマスターツールでパラメタを無視させる
google さまが details.php についているパラメタの cidやdateを無視してくれれば問題がない
■やり方
google ウェブマスターツールを開く。
「サイト設定」-「設定」画面の「パラメータ処理」タブを開く。
「パラメータを追加」を押して「パラメータ」に"cid"、「処理」を"無視する"に設定する。
同様に date, uid も追加する
■問題点
google さまのこの設定は d3blog だけでなく、他のモジュールのURLにも効いてしまうので、予期しない副作用が起こる可能性がある。
特に uid は問題になるかもしれない...
googleさまがこの機能をもう少し使えるものにしてくれると良いのだが...



(2) 余計なパラメタをつけないようにする
本来であれば、一つのエントリに複数のURLでアクセスできるのは好ましくないので、パラメタを取ってしまおう!という考え方だ。
とはいっても「余計なもの」をd3blog が勝手につけている訳ではないので、これをやると若干問題が発生するのだが...
■やり方
altsys などを使ってテンプレート d3blog_inc_entry.html を編集する。

-<h3 class="d3blogEntryTitle"><{if $isIndex}>
<a href="<{$mod_url}>/details.php?bid=<{$entry.bid}>
<{if $extra_uri}>&amp;amp;<{$extra_uri}>...


<{if $extra_uri}>&amp;<{$extra_uri}><{/if}>
部分を削除する。
■問題点
年月別の一覧から個別のエントリーを開いた際に、blogカレンダーブロックの表示が、今月に戻ってしまう。(blogカレンダーブロックを使っている場合)
(他にも問題はあるかもしれませんが、とりあえずこれしか気がつきませんでした...)



(3) タイトルがユニークになるように、タイトルに文字を追加してしまう
要はタイトルが重複しているために怒られるので、タイトルをユニークにしてしまおうというもの。
だが、これはソース変更が必要だ。
見る限りでは1〜2行で簡単にという訳にはいかなそう...
■やり方...ではなく考え方
基本的には xoops_trust_path/modules/d3blog/main/details.php 内の
'xoops_pagetitle' をアサインしている部分 (line95)
に cid や date パラメタの値を追加するようにすればOK
■問題点
そもそも title に値を追加してしまうと、画面にそのように表示されてしまう。
ロボットには良いが、人間が見たときに不細工になりそう...

という訳で、なかなか決定打はないなぁ。
とりあえず (2) かなぁ...
  • トラックバック (0)
  • 閲覧 (5080)