文件路径使用XSLT包括(File paths with XSLT includes)

2019-10-23 01:49发布

我正在用大量的页面在网站上,而且每一个都有这样在它: <xsl:include href="team-menu.xsl" />

此XSL文件存储在根目录下。

从本质上讲,包括每个网页上我的“团队菜单”。 我的问题是,当我包括此嵌套页面,如“/teammembers/smith.xsl”,因为他们指的是不在同一个目录我正在浏览的页面的页面在菜单中的链接被破坏。

这可能是很容易的,但我只是不知道如何解决它。 有没有办法告诉XSL根目录和/或设置某种全局目录的? 谢谢你的帮助!

Answer 1:

如果我理解你的问题正确,你可以只使用绝对链接,而不是相对的。

/index.xml代替index.xml



Answer 2:

您可以使用XSL参数来传递的基本目录。 所有的处理器都使用了这些传递的机制(如xsltproc --stringparam basedir style )。 在您的样式表,你应该能够使用类似以下消耗参数:

<xsl:param name="basedir" />
<xsl:include href="{$basedir}/team-menu.xsl" />


文章来源: File paths with XSLT includes
标签: html xml xslt