※間違ってたらごめんなさい
rhacoのテンプレートは基本的に
- {}で囲むと変数表示(Smartyみたいな感じ)
- ループやifは
になっている。
rt:タグの解説(わかる範囲で)
タグ名 | 引数 | 解説 |
param="条件式" value="条件式の結果(Boolean判定なら不要)" | if | |
ifと同じ | ifの反対 | |
else | ||
param="配列" var="格納する変数" counter="カウンタ変数" key="配列のキーを格納する変数" | foreachと同等 | |
counter="格納する変数" start="開始値" end="終了値" step="増加値" | for ( counter = start ; counter < end ; counter += step ) | |
コメント(出力されない) | ||
name="ブロック名" | ブロック領域を指定 | |
href="テンプレートファイル名" | ブロックを置換 | |
src="置換前" dest="置換後" | テンプレート内の文字列srcをdestに置換する | |
name="" errors="" join="" var="" | ? | |
localeに合わせて置換する | ||
param="" single="" | 複数形判断で取得する(?) | |
? | ||
href="テンプレートファイル名" | 継承 | |
href="テンプレートファイル名" | ファイルを読み込む |
ブロック
ブロックの使い方は、たとえば元のテンプレートで
<rt:block name="block01"> abc </rt:block>
と定義する。このままだと普通に「abc」って表示されるんだけど、この後に
<rt:setblock href="block.html" />
と記述し、block.htmlには
<rt:block name="block01"> def </rt:block>
とすると、元のテンプレートの出力は「def」になる、という仕組みらしい。
継承
継承は、ブロックと逆の動作だと思えばいい。
例えばa.htmlに
<html> <body> <rt:block name="block01">aiueo</rt:block> </body> </html>
と記述し、b.htmlに
<rt:extends href="a.html" /> <rt:block name="block01">kakikukeko</rt:block>
と記述し、b.htmlを表示されると、a.htmlのblock部分がb.htmlのblock部分に置き換わったものが出力される。