WordPressの「wp_get_archives」のMT版タグ「MTGetArchives」

WordPressの「wp_get_archives」のMT版タグ「MTGetArchives」

Posted at December 14,2012 1:55 AM
Tag:[MovableType, TemplateTag, WordPress]

WordPressの「wp_get_archives」のMT版タグ「MTGetArchives」を作ってみました。

MTGetArchivesタグは、WordPressの「wp_get_archives」とほぼ同等の機能があります。

1.開発の経緯

WordPressの「wp_get_archives」タグは、月別アーカイブ一覧や記事一覧などのHTMLマークアップを返却するようになっています。

例えば次のように記述すれば、12ヶ月分のリストを出力します。

<ul>
<?php wp_get_archives('type=monthly&limit=12'); ?>
</ul>

これと同じリストをMTのテンプレートタグで出力しようとすると次のようなテンプレートを用意する必要があります。

<ul>
<mt:ArchiveList type="Monthly" lastn="12">
<li><a title="<$mt:ArchiveTitle$>" href="<$mt:ArchiveLink$>"><$mt:ArchiveTitle$></a></li>
</mt:ArchiveList>
</ul>

どちらのタグも一長一短あると思いますが、少なくとも複数のMTタグを覚えないと期待通りの内容が出力されないというのは、WordPress使いの人にとってMTタグを使うときの障壁のひとつになっているような気がします(それ以外の理由の方が大きいかもしれませんが)。

ということで、WordPressのタグと等しい機能をMTタグとして提供してみることにしました。

他のWordPressテンプレートタグについても順次開発していく予定です。

2.機能

このプラグインで提供するMTGetArchivesタグを次のように設定するだけで、月別アーカイブの一覧を出力します。

<ul>
<$mt:GetArchives$>
</ul>

オプションには以下のものを用意しています。

  • type:表示するアーカイブリストの種類
    • Yearly
    • Monthly(デフォルト)
    • Weekly
    • Daily
    • postbypost
  • limit:取得するアーカイブ数。初期値は制限なし
  • before:リスト直前の文字列
  • after:リスト直後の文字列
  • sort_order:降順(descend)・昇順(ascend)を指定
  • show_post_count:記事件数を表示する場合「1」を指定

例えば直近6ヶ月の月別一覧は次のように指定します。

<ul>
<$mt:GetArchives limit="6"$>
</ul>

出力例
出力例

日別一覧は次のように指定します。

<ul>
<$mt:GetArchives type="Daily"$>
</ul>

3.インストール

下記のリンクをクリックして、プラグインアーカイブをダウンロードします。

更新履歴

v0.01 初版
v0.02 postbypostに対応/ソースコード見直し
GetArchives_0_02.zip

プラグインアーカイブを展開し、中にあるGetArchivesフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。

システム管理画面のプラグイン設定画面で、「GetArchives~」が表示されればインストール完了です。

プラグイン設定画面

4.その他

2012年12月の初版(v0.01)ではすべての動作を確認できていませんので、今後時間をみて確認していきたいと思います。 v0.02を公開しました。

2012.12.14
本文を修正しました。

関連記事
トラックバックURL


コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)