最近のコメント/トラックバックをエントリーとともに表示するプラグイン(MT4専用)

「最近のコメント/トラックバックをエントリーとともに表示するプラグイン」のMovable Type 4専用版を公開します。

2009年12月5日
このプラグインはMovable Type 5でも動作します。

1.プラグインのダウンロードとインストール

以下のリンクをクリックすると、プラグインのファイルをダウンロードすることができます。

Recents_2_11.zip

プラグインの継続的な開発やサポートのために、プラグインをご利用された方は、ドネーション(寄付)を行っていただけると幸いです。
ドネーションの方法は、こちらのページをご参照ください。

また、このプラグインの他にも、いくつかのプラグインを配布しています。
配布中のプラグインは、Movable Type Plugin Directoryのページをご参照ください。

Movable Typeのプラグイン開発等のドキュメント「Movable Type Developer's Guide Volume 1」も販売しています。
ご自分でプラグインを作ってみたい方に、ぜひお勧めしたい一冊です。
詳細は特設ページをご覧ください。

ダウンロードが終わったら、ファイルを解凍します。
すると、「Recents」というフォルダができますので、そのフォルダを丸ごとMovable Typeの「plugins」ディレクトリにアップロードします。

2.追加されるテンプレートタグ

このプラグインをインストールすると、以下のテンプレートタグが追加されます。

・MTEntriesRecentlyCommented/MTEntriesRecentlyPinged
最近にコメント(MTEntriesRecentlyCommented)/トラックバック(MTEntriesRecentlyPinged)があったエントリーを出力するコンテナタグです。
以下のアトリビュートを指定することができます。

include_blogs="x,y,z" 検索対象のブログのIDを指定します。
「include_blogs="all"」とすると、すべてのブログを対象に検索します。
include_blogs="children"
(Movable Type 5以降)
ウェブサイトのテンプレートでこれらのタグを使う際に、ウェブサイト配下のすべてのブログを対象に検索します。
include_blogs="siblings"
(Movable Type 5以降)
ブログのテンプレートでこれらのタグを使う際に、同じウェブサイトの配下に属するすべてのブログを対象に検索します。
include_with_website="1"
(Movable Type 5以降)
ウェブサイトのテンプレートでこれらのタグを使う際に、ウェブサイト自身も検索対象に含めます。
「include_blogs="children"」のモディファイアと併用します。
exclude_blogs="x,y,z" 検索から除外するBlogのIDを指定します。
lastn="x"最大でx個のエントリーを出力します。
comment_lastn="x"
(MTEntryRecentlyCommentedタグの場合)
ping_lastn="x"
(MTEntryRecentlyPingedタグの場合)
最近のコメント/トラックバックを最大でx個まで検索します。
lastn="x"と同時に指定した場合は、lastnとcomment_lastn(またはping_lastn)のどちらかの条件を満たした時点で出力が終わります。
per_entry="x"エントリー1つにつき、最大でx件のコメント/トラックバックを出力します。
sort_order="descend|ascend"見つかったエントリーを、最近コメント/トラックバックがあったものから順に表示するか(descend)、その逆にするか(ascend)を指定します。
指定しない場合は、sort_order="descend"を指定したのと同じになります。
mode="force"標準では、カテゴリー・アーカイブ・ページと日付アーカイブ・ページでは、そのアーカイブ内のコメント/トラックバックのみを出力の対象にします。
これらのテンプレートでも全てのコメント/トラックバックを対象にしたい場合は、このアトリビュートを指定します。
mode="entry_date"日付アーカイブ・ページでは、標準では、アーカイブの期間にあったコメント/トラックバックをエントリーごとにまとめて出力します。
これを変えて、アーカイブの期間のエントリーについたコメント/トラックバックを出力するようにしたい場合は、このアトリビュートを指定します。
search_limit="x"最近のコメント/トラックバックのうち、x件までを検索の対象にします。
カテゴリー・アーカイブ・テンプレートの中でこのタグを使う場合と、日付アーカイブ・テンプレートで「mode="entry_date"」のアトリビュートを指定する場合、search_limitアトリビュートで、検索対象の件数を制限しておく方が良いです(そうしないと、コメント/トラックバックが増えるほど再構築に時間がかかるようになります)。

・MTRecentComments/MTRecentPings
個々のエントリーについた最近のコメント(MTRecentComments)/トラックバック(MTRecentPings)を出力するコンテナタグです。
MTEntriesRecentlyCommented/MTEntriesRecentlyPingedタグのコンテナの中で使います。

標準では、最近のコメント/トラックバックを、新しいものから順に出力します。
古いものから順に出力したい場合は、「sort_order="ascend"」のアトリビュートを付加します。

・MTRecentCommentCount/MTRecentPingCount
最近のコメント(MTRecentCommentCount)/トラックバック(MTRecentPingCount)の数を出力する変数タグです。
MTEntriesRecentlyCommented/MTEntriesRecentlyPingedタグのコンテナの中で使い、それらのタグに指定したアトリビュートに沿って、件数が数えられます。

3.使用例

このプラグインを利用して、最近のコメント10件をエントリーごとにまとめて表示するには、以下のようにタグを組み合わせます。

<ul>
<MTEntriesRecentlyCommented comment_lastn="10">
  <li><$MTEntryTitle$>(<$MTEntryDate$>)
      <ul>
        <MTRecentComments>
        <li><$MTCommentAuthor$>(<$MTCommentDate$>)</li>
        </MTRecentComments>
      </ul>
   </li>
</MTEntriesRecentlyCommented>
</ul>

また、最近のトラックバック10件をエントリーごとにまとめて表示するには、以下のようにタグを組み合わせます。

<ul>
<MTEntriesRecentlyPinged ping_lastn="10">
  <li><$MTEntryTitle$>(<$MTEntryDate$>)
      <ul>
      <MTRecentPings>
        <li><$MTPingBlogName$>(<$MTPingDate$>)</li>
      </MTRecentPings>
      </ul>
   </li>
</MTEntriesRecentlyPinged>
</ul>