【发布时间】:2015-10-03 11:35:51
【问题描述】:
我想在使用父块的内容时更改子模板中父块的顺序。
例子:
父模板:
{block outer}
{block a} ... some long content ...{/block}
{block b} ... some long content ...{/block}
{block c} ... some long content ...{/block}
{/block}
子模板:
{extends file="parent:parent.tpl"}
{block outer}
{block c} reuse content of parent block "c" {/block}
{block b} reuse content of parent block "b" {/block}
{block a} reuse content of parent block "a" {/block}
{/block}
我尝试在块 a、b 和 c 中使用 {$smarty.block.parent}:
{extends file="parent:parent.tpl"}
{block outer}
{block c} {$smarty.block.parent} {/block}
{block b} {$smarty.block.parent} {/block}
{block a} {$smarty.block.parent} {/block}
{/block}
在这种情况下,{$smarty.block.parent} 包含父块“外部”的内容。
是否可以在子模板中渲染内部块a、b和c的内容?
场景:块 a、b 和 c 的内容非常复杂,我想避免从父级复制和粘贴整个内容。
【问题讨论】:
-
你不能把每个子块都设置为子模板,然后用顺序ABC做一个模板,用CBA做另一个模板
-
我不确定我是否理解您的建议。 :) 无论如何,我无法修改父模板,因为它是 ShopWare 的一部分。
标签: php templates smarty shopware