アルファサード株式会社 代表取締役 野田 純生のブログ


MTタグだけでプラグイン(みたいなもん)を作る。


公開日 : 2008-02-06 02:22:54


えーっと、面白いもん作ってしまった(<<自分で言うか!?)

このあいだエントリー編集画面でMTEntries等のタグを使えるようにするCMSEntryContextというのを思いつきで作ったのだけど、idが振られていないとエラーになるとかエントリーはいけるけどカテゴリーは駄目とか、「確認」>>「ブログ記事を再編集」だと効かないとかあったので、そのあたり改良して「Entry」を外して「CMSContext」という名前にしました。

何が面白いって、ちょっとムービーでも見てくださいな。

でね、まぁこういったプラグインは確かに良く? あるわけなんですけど、CMSContext.pl は別として、これらの実装には、実は...

Perlのコード1行も書いてないんですよ。

すべてMTタグ(「タグクラウド入力支援」の方はMTタグ+JavaScript/CSS, カテゴリのショートカットの方はMTタグのみ)

JavaScript使っといてノンプログラミングじゃねーだろ! ってのは置いておいて、とにかくテンプレートだけであれこれ出来るんですね。

これまでPerlでプラグイン書くってのが一般的だったんだけど、MT4.1でMTMLがプログラミングチックに書けるようになったわけで、MTタグであれこれやってきたテンプレートいじりの好きなデザイナーさんとかがこれからは面白いの作ってくれるんじゃないかなぁ〜と思うのです。

まぁ、Perlで書かれていない段階でそれを「プラグイン」と呼ぶかどうかわからんのですけどね。

カテゴリの編集画面の右側に「ショートカット」としてカテゴリに属しているエントリーを表示するには、

  1. プラグインの tmpl/フォルダに edit_category.tmplをコピー
  2. フッタモジュールの直前に以下のブロックを追加

<mt:setvarblock name="related_content" append="1">
<mt:cmscontext>
<mt:setvarblock name="category"><mt:categorylabel></mt:setvarblock>
<mtapp:widget
        id="useful-links"
        label="<__trans phrase="Useful links">">
        <ul>
        <mt:entries lastn="10" category="$category">
            <li class="current-filter"><a href="<mt:var name="script_url">?__mode=view&amp;_type=entry&amp;id=<mt:entryid>&amp;blog_id=<mt:blogid>"><mt:entrytitle></a></li>
        </mt:entries>
        </ul>
    </mtapp:widget>
</mt:cmscontext>
</mt:setvarblock>

以上。

気になっているところがあるにはあって、編集画面(__mode=view)が呼び出される段階で、一回エントリーとかカテゴリーはロードされてるわけだから、も一回ロードしなくても取得出来ないのかなぁ...ってなところが気になっていると言えば気になっている(何か文章無茶苦茶やな。あるにはあってとか気になっていると言えば気になってる...とか)。ちょっとソース追いかけてみたけど今日はわからんかった、っていうか仕事たまってて時間がない!

いや、しかしMTで作るの楽!

カテゴリ
タグ


このブログを書いている人
野田純生の写真
野田 純生 (のだ すみお)

大阪府出身。ウェブアクセシビリティエバンジェリスト。 アルファサード株式会社の創業者であり、現役のプログラマ。経営理念は「テクノロジーによって顧客とパートナーに寄り添い、ウェブを良くする」。 プロフィール詳細へ