ソースレベルで条件分岐をする方法

更新日
2017.07.29
作成日
2016.12.15

移行作業中のため一部のページが正しく表示されていない場合があります(o-ω-))

テンプレートやドキュメント中でソースレベルで条件分岐をする方法です。

@IF文による分岐処理

@IF文 は条件分岐用の特殊タグです。

<!--@IF:[*変数名*]>値があれば表示<@ENDIF-->
<!--@IF:![*変数名*]>値が無ければ表示<@ENDIF-->
<!--@IF:[*変数名*]>
  値があれば表示
<@ELSE>
  そうでなければ表示
<@ENDIF-->

モディファイアを組み合わせることでスニペットを使わなくても多少複雑な分岐も出来ます。

<!--@IF:[+notes:is(`A`)+]>notesにAが設定されています<@ENDIF-->

HTML 上に長々とコードが入るのも見通しが悪くなるので、場合によってスニペットと使い分けるのがおすすめです。

モディファイアによる分岐処理

条件分岐のためのモディファイアが用意されています。これを使って条件付きの表示をすることが出来るのでいくつか紹介します。

ifempty - 値が無ければ別の内容を表示

[*name:ifempty([*pagetitle*])*]

ifnotempty - 値があれば別の内容を表示

[*name:ifnotempty(<p>[*name*]</p>)*]