ウチのサイトはフツーのサイト(書いてある内容は別にして)をblogに移行したもので、 過去の記事も全部blog上に移したため、相当たくさんの記事がある。 この個別のアーカイブやら何やらにアクセスログを付けようとすると、大変なのですよ。
ということでここは一つ、MTのテンプレートに適当にうまいこと書いて、アクセスログをつけてみよう。
まずアクセスログの選定から。 便利だしかっこいいのでn+さんの「AccessLogger+Analyzer4e」に大決定! 最近Googleさんから飛んできた場合にも、キーワードの抽出をしてくれるようになったのでウハウハです。 ちなみに今月一番変なキーワードは「難しいケーキ」です。難しい。
続いて、説明に従ってインストール!パーミッションの変更を忘れずに。
次に、設定。とりあえずIndividualArchiveのテンプレートをいじります。
<script language="JavaScript">
<!--
var ImageWidth = 1;
var ImageHeight = 1;
var ScriptUrl = '<$MTBlogURL$>設置した/ディレクトリ/log4.cgi';
var CounterName = '<$MTEntryID pad="1"$>';
var Tag = '<img' +
' src="' + ScriptUrl + '?' + CounterName + '@' + document.referrer + '"' +
' width=' + ImageWidth +
' height=' + ImageHeight +
'>';
document.write(Tag);
// -->
</script>
<noscript><img src="<$MTBlogURL$>設置した/ディレクトリ/log4.cgi?<$MTEntryID pad="1"$>@" width="1" height="1"></noscript>
私は上の記述を<head>タグの中に書いちゃってます。 文法的に正しいのかはなはだ疑問ですが、ログはちゃんと取れてます。 「<$MTBlogURL$>設置した/ディレクトリ/log4.cgi」というのは、 あなたのBlogのURLが仮に http://hoehoe.blog.com/ だとすると、 http://hoehoe.blog.com/cgi-bin/log/log4.cgiとかそんな感じの、 あなたがlogを設置したディレクトリを示すようにするということです。
こうすることで、個別のアーカイブのエントリーに飛んできた場合も、ログが取れることになります。 <$MTEntryID と書いてあるため、 個々のエントリーは EntryIDで区別され、例えば000021に30アクセス、とかそんな感じになります。
あとはこれを応用すれば、CategoryArchiveだろうがMonthlyArchiveだろうがなんでもログを取れる、 ということになります。 不親切な感じですが面倒くさいので終了!