在最近从Tridion 2009升级到2011年期间,部分XSLT组件模板停止工作.
组件模板从当前发布XML的categoryXSD部分读取子关键字.然后使用webdav加载每个关键字.
看来,该出版物XML的这一部分已于2011年删除.
有没有人知道在使用XSLT模板时从Category Tcm Id获取子关键字的另一种方法?
如果我在使用旧式 XSLT 组件模板时需要项目列表,我通常会创建一个“Helper”服务或 ASPX 页面,它返回包含相关项目的 XML 文档。然后,您可以使用 XSLT 中的 Document() 函数调用该帮助器。通常,这采用存储在 CMS 服务上的 ASPX 形式,类似于http://tridion.local.url/web/helpers/GetListXml.aspx?uri=SomeOrgItemURI
您可以使用 GetListXml.aspx 中的 TOM API 通过 GetListItem 查询项目并将响应写入输出。
然后在您的 XSLT 中您可以使用类似<xsl:variable name="KEYWORDS" select="document('http://tridion.local.url/web/helpers/GetListXml.aspx?uri=$CAT_URI')"/>. 然后,您可以迭代新变量中的关键字节点。
但是,如果您使用 SDL Tridion World 上提供的模块化模板和XSLT 中介器,则这些都不是必需的,因为内置了许多帮助程序。我强烈建议考虑较新的模板技术,它们可以提供很多功能。
| 归档时间: |
|
| 查看次数: |
296 次 |
| 最近记录: |