if と else

2007-11-04Category: TEXTPATTERN

Tags:

txp には txp:else というタグがあります。
PHP が書ける人ならなんとなく解ると思いますが、txp は「もし結果が A のときは B を表示し、そうでなければ C を表示しなさい」という条件分岐を行うことができます。

この「もし」は “if” になるわけですが、 txp:if_foo というタグはたくさんあります。foo にはその用途によって違った文字列が入ります。
たとえば検索結果のときは txp:if_search で、本文中の概要のときは txp:if_excerpt というふうです。
実際に使用する際は下記のように書きます。

<h2><txp:title /></h2>	//記事タイトル
<txp:if_excerpt>	// もし概要があれば
<txp:excerpt />		//概要を表示する
<txp:else />		//そうでなければ
<txp:body />		//本文を表示する
</txp:if_excerpt>	//条件分岐ここまで

上記の場合、概要があれば概要のみを表示させますが、概要がない場合は本文のみが表示されます。

条件分岐の開始 – 真の場合表示させたいもの – else – 偽の場合表示させたいもの – 条件分岐の終了
と書きます。
この法則は他の if タグでも同じです。

たとえば txp:if_article_section を使えば、1 つのページテンプレートに 2 つ分のテンプレートを書いておいて、条件分岐でそれぞれのセクションに当てはめたり、 txp:if_category を使ってカテゴリごとに表示をコントロールすることができます。
if を使うことによってリソースを削減すること、ページやフォームが多くなりすぎて自己管理ができなくなることを防ぐ役割もあります。

一度覚えるととても便利なので、ぜひ活用されてください。

if がどのくらいあるのかは以下をご覧ください。
Alphabetical Tag Listing – Textbook International

Comment

  • 一部のタグが利用できます : Textile ヘルプ
  • E-mail Address と Website URL は任意項目です。
  • Gravatar に登録しているメールアドレスを入力すると、コメントでアイコンが表示できます。
  • コメントの削除・修正は出来ません。削除・修正をご希望の方はお問い合わせください。
  • 尚、コメントの Website URL は、nofollow が施されています。