トラックバック・ピンバック・コメントAPI
トラックバックとは何?
ブログにエントリを投稿する時、よく他人の記事やブロガー達を参照すると思います。 他のブロガー達の記事についてあなたの意見をブログに投稿しても、その人はあなたが彼について何を書いたのか気づかないかもしれません。
ここでトラックバック(またはトラックバックピン)の登場です。 ほとんどのブログアプリケーションは、通知の送受信のために共通のインターフェイスを持っています。 このインターフェイスを使うことで、元記事の執筆者はあなたが彼のどの記事に言及したのかがわかるようになります。
トラックバックはどんな感じのもの?
トラックバックとは、元記事のブログに用意されている特別なURLにただアクセスし、いくつかの変数を提出するだけのものです。
これらの変数はHTTPのGETまたはPOSTを通して送信されるもので、あなたのブログのタイトル、URL、概要、そしてあなたが言及している記事のURLが含まれています。
そして元記事のブログアプリケーションに届いた後、それらトラックバックは表示されるかまたは隠されることもあります。
s9yでは、あなたの記事に届いたトラックバックは、その各々の記事のフッタ部分に表示されます。
この「トラックバック(1)」をクリックすれば下記の内容が表示されます。
- この記事へのトラックバック元のURLとタイトルと概要。
-
手動トラックバックのためのリンク。
あなたのブログのビジターはこのリンクをコピーして自分のブログに取り込み、あなたのブログにトラックバックを送ることができます。 - トラックバック元の記事の詳細を見るためのリンク。
投稿記事の詳細表示の時も、概要表示の時と同じくトラックバックにアクセスできます。
また、s9yが出力したHTMLコードを見ると、他のブログアプリケーションからあなたのブログにトラックバックを送ることができるように、テキスト内に様々なRDFタグが書かれているのがわかるでしょう。
トラックバックの送り方
s9yは簡単な自動トラックバック検知をします。
もし記事の中に通常のHTMLリンクがあった場合、その記事を保存すれば、s9yは自動的に投稿記事内を探します。
有効なトラックバック選択肢があれば、全ての外部リンクが検索されて集められ、見つかったところにトラックバックを送ります。
つまり基本的に手動ですべきことは何一つありません!
あるブログがs9yが自動トラックバックを送ることができるための "素晴らしき" RDFメタデータを扱えない場合、serendipity_event_trackbackを用いて、手動トラックバックURIを明示することが可能です。
あるページに "素晴らしき" RDFメタデータが含まれていなかったり、メタデータが間違っている(RDFの指示子はあなたが入力したURLと同じではありません)場合は、エントリを保存する時に以下の警告が出ます。
「指定したURIにマッチするトラックバックURIが見つかりませんでした」
Serendipityの自動トラックバックは、トラックバックAPIで必須とされているRDFメタデータを含むURLに向けてしか送信できません。
いくつかのwordpressブログがこの必要なメタデータを提供しないことが知られています。
従いましてSerendipityは自動トラックバックを送ることはできません。
解決策は、そのブログのオーナーに苦情を申し立てるくらいです。
またこれに先立って言及されたトラックバックプラグインを使うこともできます。
これは手動でトラックバックを送ることができ、RDFメタデータを必要としていません。
自動トラックバックの止め方
Serendipityのリポジトリから手動トラックバックプラグインを導入すれば、特定のエントリでトラックバックを送るか無効にするかが選択可能となります。
まとめてトラックバックを無効にするには、serendipity_config_local.inc.phpファイルを編集してください(ファイルを編集がわからない場合に備えて、FAQのfixperm.phpスクリプトを参照してください)。
次の行を ?> と書かれた閉じタグより前の任意の場所に挿入します。
$serendipity['noautodiscovery'] = true;
これであなたのブログから一切のトラックバックを送信しなくなります。
これは(まだ)Serendipityの設定項目に用意されていません。
なぜなら私たちは今なお、ブログにおいてトラックバックは欠かせない有用なものだと信じているからです。
将来においてSPAMがブログに関わる最も重要な問題に変わってきたら、…その時までは…
そうなればこの手動トラックバックの方法を使う必要があるでしょう。
ピンバックとは何?
エントリを書いたら、テクノラティやその他の特定のブログページにエントリを通知したくなると思います。 この通知を「ピンバック」と呼びます。
ピンバックとはどんな感じのもの?
ピンバックもまた特定のページに対して送る、標準的なHTTPのGETかPOSTによるリクエストです。多くのサイトではこれらのリクエストを確認するためのAPIと同じようにXML-RPCを用いています。
ピンバックサービスのホストに送られる値は一般的に、あなたのブログのタイトル、概要、URL、そして投稿内容の抜粋です。
ピンバックの送り方
ピンバックが動くためにはアナウンスエントリ一覧プラグインがインストールされている必要があります。 このプラグインの設定項目の中で、あなたがエントリの通知を行いたいピンバックサービスを選ぶことができます。
次に新しいエントリを書く際に、画面の最下部に新しい特別なエリアができているはずです。 今書いている記事をどのサービスに通知するのかを選ぶため、いくつかのチェックボックスが利用可能です。
次に記事を「公開」として保存すれば、あなたのエントリはそれらサービスに通知されます。 これは記事を最初に公開した時にのみ行われます!
コメントAPIとは何?
コメントAPIはRSSフィードの中で使われる特殊なXMLの名前空間(ネームスペース)です。 あなたのRSSフィードのあらゆる購読者が簡単にコメントを投稿できるようになります。
そしてs9yと連動して、コメントが必要そうな全てのデータを読み取り、ユーザーがブログを通してコメントしたかのように表示します。