我有多个页面模板功能。
我需要将一个 HTML 块插入到每个中。
理想情况下,我希望在所有其他页面模板中嵌入另一个页面模板功能 - 但这似乎是不可能的。
执行此操作的最佳方法是什么,以便插入的 HTML 不会重复并且可以在一个地方进行编辑?
您可以创建一个 XSLT 函数并将您的 HTML 块放入其中,然后将该 XSLT 函数插入到页面模板功能中。
若要创建 XLST 函数,请转到"函数"透视图,右键单击内容树中的"XSLT 函数"节点,然后选择"添加 XSLT 函数 - 按照向导操作"。
现在,您可以将 HTML 内容直接添加到模板中,就在<!-- markup placed here will be the output of this rendering -->
注释下方。XSLT 函数可以通过从系统加载 XML 数据并以您喜欢的任何方式对其进行转换来为您执行许多操作,但这不是实现此目的所必需的。
要将函数添加到页面模板功能,请编辑模板功能并添加以下代码:
<f:function xmlns:f="http://www.composite.net/ns/function/1.0" name="YourNamespace.YourFunctionName" />
这将使您能够有一个集中的位置来维护您的 HTML 块,但它确实在某种程度上违背了页面模板功能的目的,因为它们的内容现在必须在 XSLT 函数中维护