AltTemplateでMTタグを使う。

| コメント(0) | トラックバック(1)

昨日の続き。

管理画面カスタマイズは基本MTタグで行えますが、より便利で使い慣れたMTタグを扱えるようにします。例えばエントリー編集画面でMTEntriesを使うとか。

Download:

プラグインを放り込んだだけでは何もしません。

例えば、エントリーに「タグ」がついているとして、同じタグがついているエントリーを5件「関連するエントリー」として管理画面に表示させたいとします。

  • alt_tmplフォルダにcmsフォルダを作成して tmpl/cms/edit_entry.tmpl のコピーを置く
  • 1054行目、<mt:include name="include/editor.tmpl"> の直下あたりに以下のようなMTタグを貼付ける

<MTCMSEntryContext>
<MTIf name="id">
<MTEntryIfTagged>
    <mtapp:setting
        id="rerated"
        label_class="top-label"
        label="関連エントリー">
<MTSetVarBlock name="entrytags">
    <MTEntryTags glue=" OR ">
        <$MTTagName$>
    </MTEntryTags>
</MTSetVarBlock>
<MTEntries tag="$entrytags" lastn="5">
    <MTSetVarBlock name="current"><MTEntryID></MTSetVarBlock>
    <MTEntriesHeader>
    <ul style="margin-left:18px;margin-top:5px">
    </MTEntriesHeader>
        <MTIf name="id" ne="$current">
        <li style="list-style-type:disc"><a href="<MTEntryPermalink>"><MTEntryTitle></a></li>
        </MTIf>
    <MTEntriesFooter>
    </ul>
    </MTEntriesFooter>
</MTEntries>
    </mtapp:setting>
</MTEntryIfTagged>
</MTIf>
</MTCMSEntryContext>

反映後の管理画面は以下のような感じになります。

注意点としては、エントリーオブジェクト自身にアクセスしたい場合、<MTIf name="id">のようにして、idの有無をチェックする必要があります。idが無い場合=新規エントリーの投稿になりますので、エントリーがロードできなくてエラーを吐いてしまうからです。もちろんインデックステンプレートで利用出来るタグであればこの分岐は必要ありません。

関連するエントリーを表示させるカスタマイズ

パブリックドメイン。利用に制限は設けません。

MT4.1/MTOSによって新しい仕事ができましたね、マークアップエンジニアの皆様。MT4.1ではカスタムフィールドもありますし、管理画面のユーザビリティ向上のためのカスタマイズはプログラマの手を借りずにマークアップエンジニアのあなたが(誰)が行いましょうね??

Newプラグイン

トラックバック(1)

トラックバックURL: http://junnama.alfasado.net/cgi/mt/mt-tb.cgi/121

私がこのブログを作成するにあたって使用、または参考にしたものです。 使用ソフトウ... 続きを読む

コメントする

Facebook

Twitter

このブログ記事について

このページは、Junnama Nodaが2008年1月30日 13:03に書いたブログ記事です。

ひとつ前のブログ記事は「MT/MTOSのCMSテンプレートは直接触らずにコピーをいぢくるのだ。」です。

次のブログ記事は「Let's PHP!」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 6.2.6