動的なコンテンツタグ

動的なコンテンツタグは、一般的に使われるいくつかのコンポーネントタグへのショートカットとして導入されます。これらのタグは主に、いくつかのPHP表現またはステートメントを評価した結果から内容を返すために使われます。それらには、表現タグ、ステートメントタグ、データ渡しタグ、パラメータタグ、アセットタグ、ローカル化タグ が含まれます。

表現タグ

表現タグは、テンプレートコントロールがレンダリングのプレ段階にある時に、PHP表現を提供します。この表現結果は、テンプレート上においてタグの記載がある場所で挿入されます。この表現のコンテキスト※1(すなわち$this)はテンプレートが置かれているコントロールを指します。 表現タグのフォーマットは次の通りです。
<%= PhpExpression %>
例えば、以下の表現タグはその場所で現在のページタイトルを表示します。
<%= $this->Title %>

ステートメントタグ

ステートメントタグは、PHPの表現ではなく、PHPステートメントを含んでいるという点を除けば、表現タグに類似しています。PHPステートメントの表現(例えばPHPにおけるecho や print などを使いてあらわされるもの)は、テンプレート上のステートメントタグが記載されている場所で表現されます。 ステートメントのコンテキスト※1(すなわち$this)はテンプレートが置かれているコントロールを指します。ステートメントタグのフォーマットは次の通りです。
<%%  PHP Statements  %>
以下の例はそのタグのある場所で、オランダ語での現在の時間を表示します。
<%%
   setlocale(LC_ALL, ’nl_NL’);
   echo strftime("%A %e %B %Y",time());
%>

データ渡しタグ

データ渡しタグは、表現タグに似ていますが、そのタグにより発生したコントロールによってDataBind()関数を呼び出した時だけ、表現されるという点が異なります。databind表現のコンテキスト(すなわち$this)はテンプレートが置かれているコントロールを指します。データ渡しタグのフォーマットは次の通りです。
<%# PhpExpression %>

パラメータータグ

パラメータタグは、それらがテンプレートの中で出現する場所でアプリケーションパラメータを挿入するために使われます。 パラメータタグのフォーマットは次の通りです。
<%$ ParameterName %>
Note
アプリケーションパラメータは、通常、アプリケーションコンフィグまたはページディレクトリコンフィグの中で定義されます。 テンプレートがインスタンス化される時に、パラメータは読み込まれます

アセットタグ

アセットタグは、私的なファイルを公表し、URLに一致したものを表示するために使用されます。例えば、あなたが、Webがアクセス可能でないイメージファイルを持っていて、あなたが、それをエンドユーザーに見えさせたいならば、あなたは、このファイルを公表し、そのイメージを取り出すことができるようなURLをエンドユーザーに示すために、アセットタグを使うことができます。 タグのフォーマットは次の通りです。
<%~ LocalFileName %>
ここで、LocalFileName は、が、カレントテンプレートファイルを含んでいるディレクトリへ連動しているファイルパスを参照します。ファイルパスは1つのファイルでもディレクトリであってもかまいません。ディレクトリである場合には、ディレクトリ全体の内容がエンドユーザーからアクセス可能になります。 エンドユーザーへ公開するためにアセットタグを使用しているときには、それが見られたくないファイルであるかに、最新の注意を払ってください。

ローカル化タグ

ローカル化タグはローカル化されたテキストを表示します。それらは以下ようなフォーマットです。
<%[string]%>
ここで string は、 エンドユーザーの選択している言語にあわせて、各々違う言語へ翻訳されます。ローカル化タグは、実際には Prado::localize(string)のショートカットです。