MTEntries には,コメント関連の属性 recently_commented_on があるのに,トラックバックに関するこれと同じような働きをする属性がない。プラグインの導入でできることが分かった。半年くらいの悩みが解決した。BoundlessOcean さんに感謝したい。
MTEntries には,新しくコメントがついたエントリを表示するための属性 recently_commented_on がある。しかし,新しくトラックバックされたエントリを表示するための属性がない。恐らく recently_pinged のような名前になると思われる。recently_commented_on は MTPath/lib/MT/Template/Context.pm にあるので,Context.pm をハックすればできるのかと思ってやってみたのだが,再構築でエラーが出てしまう。
半年くらい悩んで,やっと解決方法が見つかった。MTEntries を改造するというのではなく,プラグインを入れて MTEntries のような働きをさせるという方法である。使うのは MTTrackbackRanking プラグイン。記事をトラックバック数の順序で並べ替えて,ランキング表を作ってくれる。この機能のままでも十分に楽しいのだが,念願の recently_pinged のためにハックさせてもらう。
やり方は簡単で,ランキング用の並べ替えをしなくするだけである。プラグインのソース mt-trackback.pl を編集して,赤色部分を追加する(コメントアウトと1行追加)。
これを使ってトラックバック一覧を作った。プラグインを「これでもか」というほど使いまくった,偏執狂的トラックバック一覧 nlog(n) - All Trackbacks である。コメント一覧 nlog(n) - All Comments と対になるものができた。テンプレート用のソースは近日公開予定(できるのか?)。
MTTrackbackRanking プラグインを導入すると,全トラックバック数も表示できるようになる。オリジナルの Movable Type にもともとあってもよさそうなタグである。
2004年12月9日追記:
Ogawa::Memoranda: 最近のトラックバックをエントリごとにまとめて表示 に別解があるのを見つけました。MT Extensions: MTCollate 1.1 プラグイン と MTPingEntry プラグイン が必要です。
2005年1月27日追記:
トラックバック をいただいた The blog of H.Fujimoto: 最近トラックバックがあったエントリーを一覧表示するMTEntriesRecentlyPingedプラグイン では,recently_pinged 専用のプラグインが公開されています。
Master Archive Index
Total Entry Count: 1957