包含来自另一个扩展名ezpublish的模板

时间:2016-02-26 05:48:39

标签: ezpublish

在我当前的扩展模板中,我需要包含来自其他扩展程序的模板。 如果我写

{include uri="design:article/full.tpl"}

它将搜索我当前的扩展程序。我怎样才能将它指向其他扩展?根据doc,有一个name参数。什么应该是名称的价值? https://doc.ez.no/eZ-Publish/Technical-manual/3.8/Reference/Template-functions/Miscellaneous/include

1 个答案:

答案 0 :(得分:1)

design的{​​{1}}部分已经应该做你想要的了。它将从设计文件夹design:article/full.tpl中的article/full.tpl文件夹开始搜索templates模板。

eZ Publish将使用以下规则来查找好的模板:

首先:确定哪些设计用于siteaccess。请参阅site.ini文件 s

中的extension/myextension/design
[DesignSettings]

然后:确定哪些扩展提供设计。请参阅每个扩展程序的design.ini文件中的[DesignSettings] SiteDesign=a_design_specific_or_not_to_your_siteaccess AdditionalSiteDesignList[]=another_generic_design AdditionalSiteDesignList[]=standard AdditionalSiteDesignList[]=base 块(例如[ExtensionSettings]):

extension/ezflow/settings/design.ini.append.php

最后,eZ Publish查找模板。首先尝试[ExtensionSettings] DesignExtensions[]=ezflow 设计,然后从上到下尝试所有SiteDesign设计。找到模板后,查找将停止,并且此信息将被缓存(即使您的TemplaceCache / TemplateCompile / ...已禁用)。记住缓存部分,每次添加新模板时,都要覆盖另一个模板,需要清除缓存。

因此,如果我们只提供2个提供设计的扩展程序,例如AdditionalSiteDesignListezflow,则eZ Publish将尝试以下路径:

mysite

请注意,我假设extension/mysite/design/a_design_specific_or_not_to_your_siteaccess/templates/full/article.tpl extension/mysite/design/another_generic_design/templates/full/article.tpl extension/mysite/design/standard/templates/full/article.tpl extension/mysite/design/base/templates/full/article.tpl extension/ezflow/design/a_design_specific_or_not_to_your_siteaccess/templates/full/article.tpl extension/ezflow/design/another_generic_design/templates/full/article.tpl extension/ezflow/design/standard/templates/full/article.tpl extension/ezflow/design/base/templates/full/article.tpl design/a_design_specific_or_not_to_your_siteaccess/templates/full/article.tpl design/another_generic_design/templates/full/article.tpl design/standard/templates/full/article.tpl design/base/templates/full/article.tpl 扩展名的优先级高于mysite。请参阅ezflow

settings/override/site.ini.append.php

这适用于[ExtensionSettings] ActiveExtensions[] ActiveExtensions[]=mysite .... ActiveExtensions[]=ezflow .... 模板。对于内容模板(systemattribute_view_gui函数使用的内容模板),此过程略有不同,请参阅https://doc.ez.no/eZ-Publish/Technical-manual/4.x/Templates/The-template-override-system