« WikipediaをソースにしてMTのインポートフォーマットを(テスト用に)生成する。 | メイン | カスタムフィールドあれこれ。 »

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

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

このあいだエントリー編集画面で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で作るの楽!

カテゴリー: MovableType

トラックバック

このエントリーのTBPingURL:
http://junnama.alfasado.net/mt/RRrt4444.mt/2343/post_149.html

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)


トップページ | アーカイブ(このブログの全てのエントリーの一覧)

最近のエントリー

このブログのフィードを取得
[フィードとは]