[スニペット] StartIf & EndIf - 入力有無等で表示を切り替える

自作のスニペット・プラグイン・モジュールなどがあればご紹介ください
フォーラムルール
本家フォーラムなどで既に公開されてるものは、当該トピックまたは制作者サイトなどへのリンクを張っていただくだけでも結構です。
新規部品用にトピックを立てる場合は、ここのトピックを参考に必要な情報を入力するようにしてください。
kazuike
メンバー
メンバー
記事: 457
登録日時: 2009年8月12日(水) 12:53

[スニペット] StartIf & EndIf - 入力有無等で表示を切り替える

投稿記事by kazuike » 2009年9月02日(水) 13:15

入力値の有無等により表示を制御(ON/OFF)するためのスニペットです。
例えば、要約が入力されていたら、「要約」という見出しとともに要約を表示するなど、ちょっとした表示制御なんかに手軽に使えます。

例)

コード: 全て選択

[!StartIf? &var=`introtext`!]
<h2>要約</h2>
[*introtext*]
[!EndIf &var=`introtext`!]


▼概要&ダウンロード
http://www.hikidas.com/hikidas/modx_res ... _EndIf.php


PHxプラグインでも同じことが(というか、より高度はことも)できますが、
条件の指定が少し複雑になりますし、
PHxプラグインは単体でインストールするとDittoのページングが使えなくなる等の副作用があったりしますので、
値があるかどうかぐらいの、ちょっとした表示制御にはStartIf&EndIfは重宝すると思います。
▼ウェブ屋のCMS→modxヒキダス流(備忘録)
http://d.hatena.ne.jp/hikidas_ikeda/
mojira
メンバー
メンバー
記事: 83
登録日時: 2009年10月04日(日) 14:25

よろしくお願いします。

投稿記事by mojira » 2010年3月12日(金) 00:28

初めまして。
StartIfの件でご質問させて頂きます。
入力タイプがラジオボタンの「フルーツ」と名付けたテンプレート変数に
入力オプションで「バナナ||りんご」と設定しています。

やりたい事は、お問い合わせフォームなどのプルダウンメニューにて、「バナナ」を選択したリソースがあれば、
フォームのプルダウンメニュー内に選択したフルーツだけを反映させたいと考えております。

フォーム内にStartIfを、以下のような使い方で設置致しました。
ただバナナなどを選択したリソースがあるのですが、バナナのselectオプションだけ
表示するようなイメージでしたが、全てコメントアウト文で囲まれてしまい、思うような
結果になりませんでした。

コード: 全て選択

<select>

[!StartIf? &var=`フルーツ` &value=`バナナ` &hoge=`A` &off_st=`<!-- ` &off_ed=` -->`!]
<option value="フルーツのバナナ">フルーツのバナナ</option>
[!EndIf? &var=`フルーツ` &hoge=`A`!]

[!StartIf? &var=`フルーツ` &value=`りんご` &hoge=`B` &off_st=`<!-- ` &off_ed=` -->`!]
<option value="フルーツのりんご">フルーツのりんご</option>
[!EndIf? &var=`フルーツ` &hoge=`B`!]

</select>




何か間違った使い方をしているのかも知れませんが、自分で調べた範囲では、検討
がつかず、質問をさせて頂きました。

何卒、よろしくお願いします。

[サーバ]
 Sixcore 共用
 Webサーバ:(例 Apache9.9.9、IISなど)
 PHPバージョン:PHP5.1.6
 DB:MySQL 5.0.x
[modx]
 バージョン:1.0.2J