mtde.info

Movable Type Developers Express

エントリリストへ、特定カテゴリ用画像を付与する

2008年2月12日 23:00 | Writer: apstar | 記事本文

エントリリストへ、特定カテゴリ用画像を付与するサンプルです。

先頭付近のCategory1、Category2というのはカテゴリ名であり、それをハッシュのキーに、それに応対する「特定カテゴリ用画像」へのリンクを値へ代入します。

MTEntriesループ中では、ハッシュのキー(カテゴリ名)がループ中のエントリのカテゴリと一致するかどうか判定し、一致したときに特定カテゴリ用画像を付加しています。内部ではFind変数を使いまわし、一度ループを繰り返すごとにリセットされます。

コード

<MTSetHashVar name="Compare">
   <MTSetVar name="Category1" value="<img src="http://www.example.com/blog/blogimg/001.gif" />">
   <MTSetVar name="Category2" value="<img src="http://www.example.com/blog/blogimg/002.gif" />">
</MTSetHashVar>
<ul>
<MTEntries lastn="999">
   <MTSetvar name="Find" value="0">
   <MTSetVarBlock name="EntCat"><MTEntryCategory></MTSetVarBlock>
   <MTLoop name="Compare" sort_by="key">
      <MTSetVar name="imga" value="$__value__">
      <MTIf name="__key__" eq="$EntCat">
         <li><MTEntryTitle><MTGetVar name="imga"></li>
         <MTSetvar name="Find" value="1">
      </MTIf>
   </MTLoop>
   <MTIf name="Find" eq="0">
      <li><MTEntryTitle></li>
   </MTIf>
</MTEntries>
</ul>

エントリ関連サンプル

2008 mtde.info