MTでTechnoratiへタグ情報を送るには

シェアする

前回、[Technoratiのサービスについて書きました](https://asiamoth.com/200502011732/ “ブログの記事にタグを付ける利点と方法 : 亜細亜ノ蛾”)が、実は今回のために書いた予備知識的な記事でした。
Movable Typeの「Technorati: Tagsへのリンクを作成するプラグイン・[TechnoratiTags](http://george.hotelling.net/90percent/projects/technoratitags.php “90% Crud: TechnoratiTags”)」を使っても、実際には**Technoratiにタグ情報が送られていない**ようです。[Masahiko SatohさんのTechnorati Hack #2](http://satoh.masahiko.cc/archives/2005/01/technorati_hack_1.shtml “Masahiko Satoh: Technorati Hack #2”)でも同様です。今回は、その対処法です。

2006-01-16T01:09:26+09:00 追記

MTでTechnoratiへタグ情報を送る・Feed埋め込み法という記事を書きました。併せて、ご覧ください。


#### Technoratiへタグ情報を送るには
以下の文中で、「Technorati: Tagsへのリンクを貼る」事を「Tagを書く」と表記します。具体的には

というリンクのことです。
どうも、「記事の本文・追記中にTagを書く」とTechnorati: Tagsへタグの情報が送られるのですが、「記事のヘッダ部分など、本文・追記以外にTagを書いてある」とタグ情報は送られないようです。
要するに、TechnoratiではRSS/Atom(どのバージョンかは不明)の中に、カテゴリとTagが書いてあるかをチェックしているようです([Technorati: Tagsのヘルプ](http://www.technorati.com/help/tags.html “Technorati: Using Technorati Tags”)に書いてあります)。前述のプラグインで個別記事などのテンプレートにTagを書いただけでは、Technoratiにタグの情報が送られないようです(TechnoratiはWeblogのHTML部分の情報を収集しているらしいのですが、Technorati: Tagsには対応していないようです)。
ということは、RSS/Atomの中にタグの情報が書いてあればいいわけです。本文/概要中にTagを書いてもいいですが、「Technoratiではカテゴリをタグとして扱う」ので、タグ情報をカテゴリ部分に設定してみます。今回は、Atomに限定して書きます(実は、RSS 1.0に下記のhackを行ったのですが、うまくタグ情報が登録されませんでした)。
#### RSSに複数のカテゴリを設定するには
RSSに複数のカテゴリを設定する方法は、[2チャンネルの “RSS/RDF” スレ](http://pc5.2ch.net/test/read.cgi/php/1078216600/104-105 “RSS/RDF”)によると、単純に`dc:subject`を羅列すればいいようです(正しい記述方法かは不明)。
カテゴリ1
カテゴリ2
#### Atomのテンプレートをhack
まずは[MTloopプラグイン](http://www.staggernation.com/mtplugins/#Loop “Plugins for Movable Type – Staggernation.com”)をダウンロードし、MTのプラグインディレクトリにPutします。前述の[Masahiko Satohさんの記事](http://satoh.masahiko.cc/archives/2005/01/technorati_hack_1.shtml “Masahiko Satoh: Technorati Hack #2”)が詳しいです。
そして、記事の編集画面内にある「キーワード」の欄に、「`,`(コンマ)区切りでキーワードを入力」します。こんな感じです。
technorati,tag,mt,plugins,template,rss
後はAtomフィードのテンプレートを変更します。[Movable Type日本語版標準Atomフィードテンプレート](http://www.movabletype.jp/default_templates.shtml#atom_index “Movable Type Publishing Platform”)の場合は、
<$MTEntryCategory encode_xml="1"$>
の次の行に、

[MTLoopValue]

を挿入します。MTLoopは、`MTEntryKeywords`に何も入力されていない場合は余計なコードを残さないので、[`MTIfNonZero`タグ](http://hinagata.biz/log/2004/08/02/1550.html “HINAGATA:マニュアルに無いMTIfNonZeroタグ”)などを使わなくてもいいのが便利です。
これで、一つの記事に複数のカテゴリ(タグ)が設定されました。実際にこの記事にもタグを設定して投稿してみました。実際にTechnorati: tagsに情報が送信されたか、結果は投稿後に書きます。
#### 無事に送信されました
投稿後、Technorati: Tagsのページを見ると、ちゃんとこのエントリーが登録されていました。あくまでも本文中にTechnorati: Tagsへのリンクを書かず、**Atomフィードのみにタグ情報を書いています**。
具体的には、キーワード欄に下記のタグを書きました。
technorati,tag,mt,plugins,template,rss
下記のページ情報をコピーしてアドレス欄に貼り付け、表示してみてください(投稿から時間が経つと、表示されなくなりますが)。
http://www.technorati.com/tag/technorati
http://www.technorati.com/tag/tag
http://www.technorati.com/tag/mt
http://www.technorati.com/tag/plugins
http://www.technorati.com/tag/template
http://www.technorati.com/tag/rss