smarty @Wiki

{capture}

最終更新:

匿名ユーザー

- view
だれでも歓迎! 編集

{capture}

属性名 型? 必須 デフォルト 概要
name string? no default キャプチャされるブロックの名前
assign string? No n/a キャプチャされた出力を割り当てるための変数名

テンプレートの出力をブラウザに表示する代わりに変数に受け渡します。
{capture name="foo"} ... {/capture} 間のあらゆるコンテンツは、name属性で指定した変数に格納されます。
キャプチャされたコンテンツは特別な変数 $smarty.capture.foo ("foo"はname属性で指定した変数)によって利用できます。
name属性を指定しない場合は "default"が使われます。全ての{capture}は{/capture}とペアでなければなりません。この関数はネスト可能です。


テクニカルノート: Smarty 1.4.0 - 1.4.4では、変数$returnにキャプチャしたコンテンツが格納されていました。 Smarty 1.4.5からはname属性を使用する方法に変更されたので適宜にテンプレートを更新して下さい。

注意 insertの出力をキャプチャする場合には注意が必要です。キャッシュ機能が有効の時に、 キャッシュされたコンテンツ内に実行されるinsert命令があるなら、 そのコンテンツはキャプチャされません。

例 7-1. テンプレートのコンテンツをキャプチャする

{* コンテンツが表示されない限り、テーブルの行を出力しない *}
{capture name=banner}
{include file="get_banner.tpl"}
{/capture}
{if $smarty.capture.banner ne ""}
   <tr>
       <td>
            {$smarty.capture.banner}
       </td>
   </tr>
{/if}

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

記事メニュー
目安箱バナー