"
タグ導入〜それでも捨てられないカテゴリ"では、
ogawa さん作の
Tagwire Plugin に改造を施し、
従来のカテゴリとタグによる分類を橋渡しするための方法を紹介しました。カテゴリアーカイブにおいて、そのカテゴリのエントリ内で頻出するタグを列挙すると、それはカテゴリの特徴を代表するタグと見なすことができます。しかし列挙されたタグが、そのカテゴリとどの程度の関連性があるのか一見して判りません。
このエントリでは、抽出されたタグの関連度を、具体的なスコアとして数値表示するための方法を紹介しています。
以下のソースを参考に、
tagwire.pl を変更します。
この改造は、
Tagwire Plugin に既に
MTTagsInEntries が導入されていることが前提になりますので、先にそちらの改造を行っておいてください。
オリジナルコードの著作権はogawaさん
(Ogawa::Memoranda)にあります。
また上記の改造コードの扱いについては Tagwire Plugin のそれに準じます。
http://www.perl.com/language/misc/Artistic.html
新しく追加された
テンプレートタグ
<MTTagScore> は、
現在のタグの関連性を示すスコアを 100 点満点とする整数値で返します。
関連性を求める基準は以下のとおりです。
<MTTagsInEntries> 内で使用した場合
現在のコンテクストのエントリ中で、そのタグがどれだけ頻繁に使用されているかを示します。
コンテクストのエントリ全てで、そのタグが使用されている場合のスコアは 100 になります
(
カテゴリアーカイブでの例。右サイドバーの"関連するタグ")
スコア = タグの使用回数 ÷ コンテクスト中のエントリ数 × 100
例えば、カテゴリ内に 20 件のエントリがあり、そのうち 15 件のエントリで使用されているタグのスコアは 75 点です。
<MTRelatedTags> 内で使用した場合
元となるタグが使用されているエントリ中で、関連するタグが同様に使用されている割合を示します
(
タグアーカイブでの例)
スコア = タグの使用回数 ÷ 親タグを持つエントリ数 × 100
"
MovableType"をタグに持つ 20 件のエントリのうち、"plugin"をタグに持つエントリが 3 件あった場合、
"plugin"タグのスコアは 15 点です。
仮に、"
MovableType"タグと"plugin"タグが常にペアで使用されている場合のスコアは 100 点になります。
<MTTags> 内で使用した場合
<MTTagCount> と同じです。
カテゴリアーカイブ
テンプレートでの記述例は以下の通りです。
カテゴリ内のエントリで頻出するタグを列挙し、
カテゴリ中の記事との関連度を100点満点で表示します。