weblog

web制作(HTML/CSS/PHP/MySQL…)に関する内容を中心に書いていきます..。

 

エントリー内画像の有無による条件分岐(MTifとlike、tagモディファイア使用)

mtif-tag-like

エントリ内に画像がある時とない時の条件分岐をしたい時の設定方法メモ。
TOPの各コンテンツのエントリを表示させている部分で実際に使っているものです。

流れとしては

・MTIfのtagモディファイアにEntryBodyを設定。likeモディファイアに「img」を入れる。
・結果、MTEntryBodyに「img」の文字列(HTMLのimgタグ)があれば、コンテンツAを出力。なければ、MTElseでコンテンツBを出力する。

【問題点】
エントリ内に画像がない場合でも、文章内に「img」も文字があると
コンテンツAを出力してしまう。
コードを載せるようなエントリだとこの問題にひっかかりそう。

欠点はあるけど、ひとまずこの方法で対応しておく。

<mt:If tag="EntryBody" like="img">
<mt:EntryAssets lastn="1" type="images">
<a href="<$mt:EntryPermalink$>" title="<$mt:EntryTitle$>"><img src="<$mt:AssetThumbnailURL width="100"$>" alt="<$mt:AssetLabel$>" /></a>
</mt:EntryAssets>
<mt:Else>
<a href="<$mt:EntryPermalink$>" title="<$mt:EntryTitle$>"><img src="/images/no_image.gif" alt="<$mt:EntryTitle$>" /></a>
</mt:Else>
</mt:If>

【参考サイト】
MTのアイテム代替画像表示、小さなひらめきで受ける充足感[熊茶壜]
MTIfのtagモディファイアで比較が出来る[WolaWola]
MTIf | テンプレートタグリファレンス[movabletype.jp]

Page URL

TrackBack URL

このページにコメントする

NAME

MAIL(管理人のみ確認)

URL

COMMENT