WEBアプリケーション研究室 開発ノート TOP

WEBアプリケーション研究室 開発ノート [PHP]Smarty3のentendsについて

スポンサーサイト

-------- --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

    このエントリーをはてなブックマークに追加

Smarty3からextendsという便利な機能がつきました。
entendsについては「Smarty3を使ってみる」に書きましたが、テンプレートの継承のような機能です。

その{block}にmodeという属性があります。
例えば親テンプレートで


{block name='css'}

{/block}
こんなブロックを宣言してるとして、子テンプレートで

{block name='css'}

{/block}
とすると、上書いてしまうので/css/global/base.cssは読み込まれません。
そこで

{block name='css' mode='append'}

{/block}
とすると後ろに追加されます。PHPでオーバーライトしたメソッドでparentを呼び出すような感じです。
mode='prepend'というのもあって、文字通り/page.cssが先に読み込まれます。

こんなことできたら便利だなと思ってソースを見たら案の定ありました。流石です。
スポンサーサイト

    このエントリーをはてなブックマークに追加
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。