MovableTypeのカスタムフィールドで画像を表示させる

MTEntriesの文脈中で画像を表示させる

MovableTypeはカスタムフィールドに画像を投稿できるアップローダーが設置できます。この時、作成したカスタムフィールドのタグの例をそのまま貼り付けちゃうとデフォルトでは「表示」という画像へのリンクになってしまいます。MTEntriesの文脈中でサムネイルを表示させてオリジナルの画像へリンクさせる方法です。

以下の例ではカスタムフィールドのタグ名が「ToppageImage」の場合を想定しています。
<mt:Entries lastn="100">
<mt:EntryAssets lastn="1" type="image OR video" sort_order="decend">

<mt:If tag="ToppageImage">
<mt:ToppageImageAsset>
<div class="asset-thumbnail">
<div class="asset-thumbnail-inner">
<a class="asset-image" href="<$mt:EntryPermalink abs2rel="1"$>">
<img src="<$mt:AssetURL$>" alt="<$mt:EntryTitle$>" width="" height="150" />
</a>
</div>
<div class="asset-thumbnail-title">
<a href="<$mt:EntryPermalink abs2rel="1"$>">
<$mt:EntryTitle$>
</a>
</div>
</div>
</mt:ToppageImageAsset>
</mt:If>

</mt:EntryAssets>
</mt:Entries>

他のMタグと違ってちょっと特殊なのは、<mt:ToppageImageAsset>というMTタグ名とAssetを合成したようなタグを使うことです。<mt:Toppage>を使ってしまうと先の「表示」というリンクになってしまいます。注意点はそれぐらいで、後は<mt:ToppageImageAsset>の内側ではカスタムフィールドの文脈になるので通常のタグが利用できます。
ちなみに2013.11時点でMT6が出てますが、こちらではちょっと仕様が変わって「表示」というリンクではなくファイル名のリンクになりましたね。
また単純に画像のパスだけ取り出したい場合は、
<mt:EntryAssets lastn="1" type="image OR video"><mt:If tag="ToppageImage"><mt:ToppageImageAsset><$mt:AssetURL$></mt:ToppageImageAsset></mt:If></mt:EntryAssets>
でOKです。絶対パスで取得できます。

Categoryの文脈中で画像を表示させる

MT5だかMT6ぐらいからカスタムフィールドを様々な個所に設定できるようになりました。例えば各カテゴリー表示の頭にサムネイル画像を表示させたい(カテゴリーのイメージ画像というところでしょうか。)とか、そういう場合はむかしは結構面倒くさいことやらないと駄目でした。しかし今は任意の画像をカテゴリーごとに表示することができます。
カスタムフィールドを作成時にシステムオブジェクトを「カテゴリー」、種類を「画像」で設定します。それから記事→カテゴリーから、各カテゴリーの詳細設定ページにいくと新しく画像投稿用のカスタムフィールドが現れます。適当な画像をアップロードします。(勿論この場合もアイテムとして画像が登録されます。)
この画像を表示させるためには、mt:Categoryの文脈か、カテゴリーアーカイブ中で表示することができます。カスタムフィールドのタグをCategoryDataImageで設定した場合は、
<mt:CategoryDataImageAsset><img src="<$mt:AssetURL$>"> </mt:CategoryDataImageAsset>
で、表示することができます。