mtde.info

Movable Type Developers Express

最新の画像を一枚取り出す

2008年2月11日 17:28 | Writer: apstar | 記事本文

アイテムの中から、最新の画像を一枚取り出すサンプルです。

サンプル1

まず、MTAssetsブロックタグへ type="image" lastn="1"モデファイアを指定して「静止画像の中から最新の一枚の画像のみ」を特定し、MTSetVarBlockを用いてNewestAssetID変数へアイテムのIDを代入します。

次にMTAssetブロックタグへ、先に取得した最新画像のID番号を id="$NewestAssetID"というモデファイア指定を行います(※NewestAssetIDは変数参照となるので、先頭へドルマークを付与せねばいけません)。そのブロック内でAsset系ファンクションタグを用いて、画像の表示・リンクコードを作成しています。

このコードを応用すると、「最古の画像を一枚取り出す」、「毎月の最初の画像を一枚取り出す」、「カテゴリごとの代表画像を一枚取り出す」といったことも可能です。

<!-- アイテム中から最新のimage画像のIDを一件取得 -->
<MTAssets type="image" lastn="1">
<MTSetVarBlock name="NewestAssetID"><MTAssetID></MTSetVarBlock>
</MTAssets>

<!-- アイテム中のIDを指定して情報を表示 -->
<MTAsset id="$NewestAssetID">
<a href="<MTAssetURL>"><img src="<MTAssetURL>" width="<MTAssetProperty property="image_width">" height="<MTAssetProperty property="image_height">" alt="<MTAssetProperty property="description">" title="<MTAssetProperty property="label">" /></a>
</MTAsset>

サンプル2

単純にMTAssets ブロックタグにtype="image" lastn="1"モデファイアを指定するだけで、最新画像を取り出すことができます。

<MTAssets lastn="1">
<a href="<MTAssetURL>"><img src="<MTAssetURL>" width="<MTAssetProperty property="image_width">" height="<MTAssetProperty property="image_height">" alt="<MTAssetProperty property="description">" title="<MTAssetProperty property="label">" /></a>
</MTAssets>

アイテム関連サンプル

2008 mtde.info