項目の中身が無いときは何も表示させないようにする

このエントリーをはてなブックマークに追加

項目の値がある場合はDivなどで囲ったり見出しを付けたいけど値が空の場合は何も表示させたくないという表示方法です。とりあえず思いついく方法をいくつか紹介。

モディファイアを使用する

グローバル設定でOutptFilterが初期設定のphx互換になっていれば以下のように書きます。簡単!

[*image:replace_to=`<div class="docimage"><img src="[+value+]"></div>`*]

replace_toモディファイアで値がある時だけタグ付きに置き換えて表示します。

テンプレート変数ならカスタムウィジェットを使用する

テンプレート変数ならば、カスタムウィジェットを使用して簡単に実現することもできます。サンプルはこちらのページを御覧ください。

表示の方法を分岐させるスニペットを使う

分岐用スニペットが配布されています。私はテンプレートの中にあまりロジックを入れたくないのでなるべく使わないようにしてますが、これを使うと一般的なCMSのテンプレートのようにテンプレート内で分岐ができます。※PHPコードではなくスニペットコードを記述します。
めっちゃ記述が複雑になっちゃいますが分岐をネストする事もできるみたいです。

evolution / assets / snippets / if /

サンプルコード作成なう

Edited on 2014.05.27 Created on 2012.10.28 MODXEvo分岐処理Tips
PAGE TO TOP