Sublayouts.

由最高迈尔斯撰写的

可重复使用的sublayouts.

我们经常想在不同视图中使用相同的布局片段。为此目的,VM3有Sublayouts。Sublayouts非常相似于Joomla的MiniLayouts,但更具流量的风格,便于使用。

sublayouts存储在fe文件夹/ component / com_virtuemart / sublayouts中。您可以将自己的sublayouts添加到核心文件夹中,或者通过模板使用/ templates / yourtemplate / html / com_virtuemart / sublayouts添加/覆盖它们

第一个参数只是要调用的布局=文件的名称。静态呼叫只是

echo shopfunctionf :: rendervmsublayout('价格',阵列('产品'=> $ this->产品,货币'=> $以下 - >货币));

然后将关联数组作为$ ViewData提供。

或在VMVIEW中

echo $ this-> rendervmsublayout($ this-> productsLayout,阵列('产品'=> $以下 - >产品,'货币'=> $以下 - >货币,'products_per_row'=> $ product_per_row,'showrating'=>'showrating'=>$以下 - > showrating)));

关联数组被添加到上下文中,并可以为例如$ this->产品可用

Sublayouts也可用于创建您自己的UserFields。新的TOS UserFields是一个例子。只需选择userfield类型自定义。userfield的名称是sublayout的使用名称。查看/ component / com_virtuemart / sublayouts中的tos.php。

配置下拉列表中显示哪些布局?

如果名称中存在下划线_,则正常布局不会显示在下拉列表中。这是为了防止用户只选择布局的可重用部分。尽管普通布局,任何Sufblayout都必须具有唯一的名称,因为它没有相关视图。它们都存储在一个文件夹中。因此,相同类型或组的不同的子层与下划线_。因此,如果要为产品创建新的Sublayout,并且它会在VM Config中出现选择,则前缀必须是“Products_”。请参阅示例Products_horizo​​n.php。