我正在一个有大量网页的网站上工作,每个网页都有:
<xsl:include href="team-menu.xsl" />
此xsl文件存储在根目录中。
基本上包括每页的“团队菜单”。我的问题是当我将它包含在嵌套页面上时,例如“/teammembers/smith.xsl”,菜单中的链接被破坏,因为它们引用的页面与我正在查看的页面不在同一目录中。
这可能很简单,但我不知道如何修复它。有没有办法告诉XSL根目录和/或设置某种全局目录?谢谢你的帮助!
答案 0 :(得分:1)
您可以使用XSL参数传递基目录。所有处理器都带有传递这些的机制(例如xsltproc --stringparam basedir style
)。在样式表中,您应该能够使用以下内容来使用参数:
<xsl:param name="basedir" />
<xsl:include href="{$basedir}/team-menu.xsl" />
答案 1 :(得分:0)
如果我正确理解你的问题,你可以使用绝对链接,而不是相对链接。
即。 /index.xml
代替index.xml
。