記事本文
Movable Type で概要 ( excerpt ) を書かない人が多すぎる
常々思っていたことですが、 Movable Type によるトラックバック機能において、概要 ( excerpt ) を正しく使いこなしていない人が多い、というものがあります。
例えば、 Movable Type 日本語版サイト: Movable Type 3.1日本語版の提供を開始のトラックバック欄を見ると、やはり新バージョンのリリースということで多くのトラックバックが寄せられています。 ( というか、私が送ったトラックバックもその中に混じっていますが。 ) しかし、ほとんどのトラックバックは概要 ( excerpt ) を記述していないために、トラックバック欄に表示される内容が記事の冒頭部分となってしまっているものばかりです。
Movable Type のトラックバックの表示方法
Movable Type におけるトラックバックの表示方法はどうなっているか。 デフォルトの個別エントリアーカイブの該当箇所を見ると、次のようになっています。
<MTPings>
<p id="p<$MTPingID$>">
» <a href="<$MTPingURL$>"><$MTPingTitle$></a> from <$MTPingBlogName$><br />
<$MTPingExcerpt$> <a href="<$MTPingURL$>">[続きを読む]</a>
</p>
<p class="posted">トラックバック時刻: <$MTPingDate$></p>
</MTPings>
テンプレート・タグ - MTPingExcerpt を見ると、
- MTPingExcerpt
送られてきたトラックバックの概要。
とあります。
次に、トラックバック - pingの送信を見ると、
クエリーのパラメータには以下があります:
title (エントリーのタイトル)、excerpt (エントリーの概要。80文字以上の場合は80文字に削られ、最後に「...」が付加)、url (エントリーのパーマリンク(permalink))、およびblog_name (エントリーが投稿されたウェブログ名)
とあります。
よって、 <$MTPingExcerpt$> は、 ping によって送られてきた <$MTEntryExcerpt$> ということになります。
しかし、記事中に <$MTEntryExcerpt$> が書かれていなくても記事は成り立ちます。 そもそも、どう使うかを知らない人の方がもしかしたら多いのかもしれません。 そういった記事の場合の <$MTEntryExcerpt$> は、記事の最初の 20 語から自動的に生成されます。
- 概要に載せる文字数
<$MTEntryExcerpt$>タグを使うときに、エントリーの概要が未設定の場合は、概要がエントリーの最初のN個の文字から自動的に生成されます。
デフォルトで概要の文字数は20です。
ここでは 20 文字とありますが、英語版の方の WEBLOG CONFIGURATION - Number of words in excerpt を見ると、
When you use the <$MTEntryExcerpt$> tag, and you have not defined an excerpt for your entry, the excerpt is auto-generated from the first N words of your entry.
とあるため、訳の時点で誤りがあったと見て、 20 語であると捉えた方が良いと思います。
また、トラックバックの技術仕様 - excerpt によると、
Movable Typeでは、この文字列が256文字以上の場合は252文字に削られ、最後に「...」が付きます。
とのことなので、「...」を含めて、 255 バイト分が <$MTPingExcerpt$> に割り当てられたフィールドということになります。
<$MTEntryExcerpt$> を記述する場合、あまり長くなりすぎないように気を付ける必要があります。
概要 ( excerpt ) を書かないことによる弊害 (1)
単純に、トラックバックを送信した際に、トラックバックを受信した側で記事の概要をつかめないということが弊害として挙げられます。 ( Movable Type の検索テンプレートでも <$MTEntryExcerpt$> が関連してきますが、それはまた別の機会に。 )
<$MTEntryExcerpt$> が記述されていなければ、記事の最初の部分を概要として自動生成がなされます。 しかし、それは果たして概要たりえるのでしょうか ? 私のように、後半の簡単なまとめ部分を <$MTEntryExcerpt$> に記述することが多い場合は、最初の部分を抜粋されても全く概要になりません。
Movable Type 日本語版サイト: Movable Type 3.1日本語版の提供を開始のトラックバック欄を見てみると、冒頭にて
お待たせいたしました。Movable Type 3.1日本語版の提供を開始いたしました。
といった movabletype.jp のアナウンスを引用している weblog がいくつか見受けられ、それをそのまま概要として自動生成してトラックバックを送っている状態になっています。
要するに、引用元であるトラックバック先の記事内に、その引用した文を概要として送りつけているのです。
これは概要云々よりも文章として矛盾を孕んでしまうため、トラックバックを送ると決めている場合は、冒頭でいきなり引用文から始めずにこれから書こうとすることを簡単に説明するか、あるいは素直に概要 ( excerpt ) 欄に概要を記述するようにすべきだろうと思います。
概要 ( excerpt ) を書かないことによる弊害 (2)
普段、一般的なブラウザで Movable Type による記事を閲覧する場合に、概要 ( excerpt ) を意識することはほとんど無いと思います。 個別アーカイブエントリーの head 要素には <$MTEntryTrackbackData$> が配置されているので、ソースを表示すれば見ることはできるのですが。 たとえば、この記事の前項までの部分を一旦投稿してできたソースから <$MTEntryTrackbackData$> を抜粋すると、
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description
rdf:about="http://hxxk.jp/mt/2004/10/25/0004.php"
trackback:ping="http://hxxk.jp/sys/mt3/mt-tb.cgi/224"
dc:title="概要 ( excerpt ) の重要性"
dc:identifier="http://hxxk.jp/mt/2004/10/25/0004.php"
dc:subject="policy"
dc:description="ほとんどのトラックバックは概要 ( excerpt ) を記述していないために、トラックバック欄に表示される内容が記事の冒頭部分となってしまっているものばかりです。トラックバックを受信した側はそういったものでは記事の概要をつかめません。"
dc:creator="makoto"
dc:date="2004-10-25T00:04:32+09:00" />
</rdf:RDF>
というように、 rdf:Description 要素の dc:description 属性に <$MTEntryExcerpt$> が記述されています。 これは <$MTEntryTrackbackData$> という名が示す通り、トラックバックを行う際に用いるデータのため、閲覧者にとって直接的に関わりのあるものではありません。
しかし、ブラウザではなくて RSS リーダなどに視点を移すとどうでしょうか。 Movable Type では RSS 1.0 、 RSS 2.0 、 ATOM 0.3 などを標準で提供しています。 これらは description 要素 ( ATOM の場合は summary 要素 ) を持っており、ここに <$MTEntryExcerpt$> が記述されています。 ( ただし、 Movable Type 3.11-ja の RSS 1.0 と RSS 2.0 のデフォルトテンプレートでは、何故か <$MTEntryBody$> が記述されていますが……何で description に <$MTEntryBody$> を持ってくるのか理解に苦しみます。 )
これも同様に、能動的に <$MTEntryExcerpt$> が書かれていなければ記事の冒頭部分を概要として自動生成します。 トラックバックの場合に比べ、 RSS の場合はそれでも各記事の概要を掴めるかもしれません。 しかし、機械的に生成された概要よりも、能動的に作者が書いた概要の方が、よりサイト ( または記事 ) の概要として適していると思います。

