1

我正在尝试执行 XSL 变量中包含的字符串。

Umbraco 有几个 Exslt 片段的钩子,但似乎 Exslt.dyn (Exslt.dynamic) 不是其中之一。

你如何添加它?可接受的方法(按优先顺序:

  1. 编写您自己的 XSLT 扩展(可能使用 Exslt Dynamic 的现有 Umbraco 代码)。
  2. 将 XSL 从http://www.exslt.org/dyn/functions/evaluate/index.html上传到 Umbraco。
  3. 修改 Umbraco 源以添加它(可能使用 Exslt Dynamic 的现有 Umbraco 代码)。

我提到 Exslt Dyanmic 的原因是因为一些 Umbraco XSLT 源显示了我假设存在于某些版本的 Umbraco 中的参考。但是,我在源代码中找不到它。(例如:粘贴在此处的 XSL 源代码:http: //our.umbraco.org/projects/starter-kits/business-website-starter-pack/general-%28bugs,-feedback,-feature-requests%29/8085 -将第一天更改为外汇星期一

4

2 回答 2

1

很少有 XSLT 处理器实现dyn:evaluate(),而 Umbraco 显然不使用其中之一。

在这种情况下,您无能为力。

要求 Umbraco 开发人员在未来合并一个 XSLT 2.0 处理器——XSLT 2.0 具有用于定义可在任何 XPath 表达式中引用的函数的本机指令。 <xsl:function>

于 2010-12-31T19:31:46.630 回答
0

不确定这是否可行,但如果 Exslt.ExsltDynamic 在 XSLT 的 .Net 实现中支持开箱即用,这应该可行。在您的样式表中添加命名空间 xmlns:Exslt.ExsltDynamic="urn:Exslt.ExsltDynamic" (如您链接的示例中)并在 exclude-result-prefixes 属性中添加 Exslt.ExsltDynamic 以使其在您的 xslt 文件中可访问。

然后你可以在你的模板中做类似的事情。

于 2010-12-31T19:13:45.220 回答