blue

トラックバックする?

  • Posted by: SOMA Hitoshi
  • March 19, 2005 2:14 PM
  • web

「ところでトラックバックってやつはどうやって使うのですか?」と上山君が日記でひとりごち、同じようにトラックバックがよくわからないと永澤みえさんたちが書くのに応えるもので、以下、最終的には内輪への「業務連絡」のようなかたちになりますが、ブログツールを使っていないふつうのページからブログの記事に対してトラックバックを行うための装置(?)を用意しましたので、それの説明、およびトラックバックの説明など。

トラックバックは「ブログ(ブログツール)が便利」であるところの要素のひとつですが、たとえば、ネットを徘徊中にある記事を見つけ、その記事に触発されて(あるいはその記事を参照して)自分も自身のサイトに同様の話題を扱った記事を書くとします。そのさい、自分の記事からその参照元の記事に対して、「そちらを参照して、こんな記事を書きましたよ」という通知を行うのが「トラックバック」と呼ばれるものの元来の意味合いで(「トラックバックを送る」「Pingを飛ばす」など言い方はさまざま/逆の立場=通知をもらう側から言えば「トラックバックをもらう」「Pingを受け取る」ということになります)、そうしたブログ間での通知のやりとり、対話、コミュニケーションを簡単に行うために考案・提唱された「技術的なあれ」が「トラックバック」なるものです。

(はじめにこの技術を実装し、みんなもこの方法でやろうよと提唱したのが「Movable Type」というブログツールで、それがこの方法/概念を「TrackBack」と名付けました。)

ブログの記事であればたいてい、その記事に対してトラックバックを送るための各記事固有のURLが(多くは記事単体のページの下部に)表記されています。たとえば私の1コ前の記事である「Clips [march 16, 2005]」であれば、

このエントリーのトラックバックURL:
http://www.web-conte.com/blue/mt-tb.cgi/209

といったふうに表記されているのがそれです。トップページなどで各記事の下に「トラックバック」とか「TrackBack」とか書かれたリンクがあれば、それをクリックすることでこのトラックバックURLの書かれてあるところへ連れていってくれます。ブログで記事を投稿/編集する画面には、このトラックバックURLを入力するための欄がありますので、上記のようにして知った当該記事のトラックバックURLをそこに入れて、投稿ボタンを押せば、あとはブログツールが勝手にやってくれます。

「勝手にやってくれ」た結果どうなるのかというと、通知を受けた側(相手側)の記事ページが自動的に更新され、あなたの側の「記事のURL」「記事のタイトル」「記事の概要」「サイト名」といった情報が相手のページに追加されます。つまり、相手のページ内に、あなたの記事へのリンクが自動で張られるわけです。このことの恩恵は、第三者であるブログ閲覧者にももたらされます。そのページが扱っている話題に関して、別のブログではどういった議論がなされているか、同じ話題を扱ったブログの記事にはほかにどんなものがあるかという把握・追跡がラクになるわけです。

で、以上は基本的に(自分でサーバに仕込んだMovable Typeであれ、レンタルした livedoorブログであれ)ブログツールを使っている者同士がやりとりする場合を説明していますが、ブログではないふつうのページ(上山君のサイトや、永澤のこっち、あるいはみえさんの「シカちゃんの絵日記」など)からでも、トラックバック送信用のツール(CGIなど)を自前で用意することにより、ブログの記事に対してトラックバックを行うことはできます。

(なお、「ふつうのページに対してトラックバックを送る」ことはできません。受け取ったトラックバックを自動で処理する仕組みをもたないページをここでは「ふつうのページ」と呼んでいますので。電話なりメールなり掲示板なりで相手のページの管理者に連絡し、それを受けた相手が「こんな記事もあるそうです」と手動でそのページに書き加えれば、それは「広い意味でのトラックバック」になるでしょうが、ここで説明しようとしているのは狭義の、「もっと便利なトラックバック」です。)

まあ、「トラックバック送信用のツール(CGIなど)を自前で用意」する者などというのは私のまわりにちょっと思い浮かばず、それで、私がそれ用のページを用意したので興味がわいたらそこを使ってください、ということを伝えるのがこの長文の最終的な意図なのですが、さて、ふつうのページからトラックバックを送るとなったときに厄介なのは、「その(自分の側の)記事に固定のURLがあるか」ということです。

ここで言う固定のURLというのは、先の「トラックバックURL」のことではなく(トラックバックURLは相手側=トラックバックを受け取る側が提供するものです)、あなたのその当該記事(ページ)に直接行くための、できれば将来も変わらないURLが存在するか、ということです。

具体的に、たとえば上山君のページ。仮に上山君が「3月19日」の日記に私のこの記事に対するレスポンスを書き、そこから私の記事にトラックバックしたいというとき、しかし現時点のソースを見るに「3月19日の日記を直接指定するためのURLの書き方」は存在せず、サイトそのもののURLを示すしかないようで、すると、トラックバックした直後はまあいいものの、そののちそれ以降の日記が増えるにつれ、私のこの記事を参照して書かれた当の日記がどこにあるのか、わからないことになるわけです。

上に述べてきたようにトラックバックは個々の記事と記事とのやりとりであって、ブログというやつは、(トップページのカスタマイズなどが楽しくてみんなそれにかまけがちになり、やっている側からすると気づきにくいことですが、)基本的に個々の記事ページそれぞれが主体となるように思考され、設計されたシステムなわけです。

「3月19日」問題に関しては、日付の頭にご存じアンカータグを付けてやったり、

<a name="date0318"></a>■3月19日(金)

あるいは日付部分を<div>で囲み、それにid属性で名前を付けてやったり

<div id="date0318">■3月19日(土)</div>

することで、

(元々のURL).html#date0318

というふうに直接その部分をURL上で指定できるようになるわけですが、それとはまた別に、こうした体裁の日記ページを作るときにありがちなこととして(これに関しては上山君のサイトはいま、フレームを使っていてそうなっていないようですが)、最新の日記たちが置かれるトップページのファイルを「index.html」とし、それが古いものとなってバックナンバー化されるときに(たとえば)「diary_0503.html」などと、そこではじめて固定的な名前を与えてファイルを分ける、といったことがあります。この場合でもやはり、その記事のURLは(内部にアンカータグが付けられていたとしても)、トラックバックを送ったのちしばらくすると変わってしまうことになります。

index.html#date0318 → diary_0318.html#date0318

この点に関して、「シカちゃんの絵日記」は1日1ページ式に生成されるCGIで、最新の日記(「index.html」でアクセスできる)でも、CGIに対して日付を指定するかたちで「その日」を呼び出すことができるので問題ありません。

http://vaca.to/cgi-bin/sicank.cgi?date=2005.03.17

まあ、そういった問題はおいおい個々に考えていくとして、とりあえず(ふつうのページからの)「トラックバック送信装置」を用意しましたので試してみてください。むろん、「時々の紬」や 0 1/2計画 の「制作日記ブログ」など元もとブログツールを使っているページからの場合は各自のブログツールの機能を使ってください(そのほうが便利ですから)。

「トラックバック送信装置」のプログラムについては

Blog Developer's Cookbook : Trackback Ping を送信する

を参照し、そこのソースをほとんどそのまま使っています。

さて、「トラックバック送信装置」はここですが、

誰でもアクセスできる場所に置くと、Trackback SPAM の踏み台にされる可能性もありますので、注意しましょう。

とのことなので、パスワード制限をかけました(「パスワード制限をかければいい」のかどうか、よくわかってませんが)。ユーザー名とパスワードは個々に、とりあえず上山君とみえさんにメールで送ります。それ以外で「使ってみたい」という人は私まで連絡をください(この記事にコメントするか、メールで)。高森さんとか、赤羽さんとか、あるいは宮沢さんなどもどうですか?

「web-conte.com」内の記事に対してだけでなく、トラックバックURLさえわかればあらゆるブログの記事に対して「トラックバック送信装置」からトラックバックを送ることができますが、まずは練習としてこの記事に対して送信してみるのがいいかもしれません。ここ(私)なら事情を知っていますので間違いをやらかしても削除など対応することができます。

ちょっとあんまり長くなってしまったので「トラックバック送信装置」の具体的な使い方については割愛(だいたいわかると思います)。質問をコメントでもらえれば受け答えしますということで。

ではよろしく。

関連記事

トラックバック(0)

トラックバックURL: https://web-conte.com/blue/mt-tb.cgi/47