我对 AEM Guides/XML 文档还很陌生,目前正在尝试弄清楚如何从生成的 AEM 站点中的 DITA 映射中获取“数据”元素。
澄清一下,DITA 映射具有以下结构:
<map>
<title>XXX</title>
<data>
<image id="logo" href="GUID-123asd123.jpg" ></image>
<xref format="txt" href="GUID-asd123qwe.txt" id="copyright">
</data>
<topicref ... ></topicref>
</map>
我想在侧边栏导航中使用“数据”元素的内容。
例如:
在侧边栏导航上显示“图像”(来自地图中的数据)
根据地图中的“xref”标签在页面页脚部分显示版权免责声明
我使用 JavaScript 和 CSS 对侧边栏导航进行了一些自定义(我创建了一个自定义 DITA-OT 插件),但我不明白如何访问“数据”,以便我可以在该自定义中使用它们。
谢谢。
我能够通过在
nav.xsl
文件中添加以下代码行来解决这个问题,该文件使用 ID
徽标检查图像
<xsl:for-each select="$input.map//*[contains(@class, ' topic/data ')]/*[contains(@class,' topic/image ')][ends-with(@id, 'logo')]">
<li>
<img class="topic-logo" src="{current()/@href}" alt="{current()/@id}"/>
</li>
</xsl:for-each>