3

我正在编写一个 SDL Tridion Anguilla 扩展,需要使用 webdav url 拉出一个配置组件。该配置还有一组 webdav url,我需要为这些获取项目对象。

弗兰克 - 可能是我在我的问题中吃了几句话。我正在编写一个 CMS GUI 扩展并编写 javascript。那么有没有像 $models.getItem(); 这样的东西?哪个给了我组件或组件的xml?

4

2 回答 2

3

在大多数 Tridion Content Manager API 中,您可以通过 TCM URIWebDAV URL 来读取项目。

因此,如果您使用的是核心服务,您可以简单地执行以下操作:

var item = client.Read(webdavURL, null);

然后您可以遍历字段(如果您使用核心服务,这个字段帮助类将派上用场)并对其中的每个值执行相同的操作。

如果您需要为客户端提供映射,则需要创建自定义 Web 服务以使其可用。虽然一开始并不简单,但创建 WCF 服务并不像某些人想象的那样令人生畏。尤其是当您从Tridion 的最小 WCF 服务示例开始时。

于 2012-12-12T00:13:25.767 回答
2

客户端上没有通过 WebDAVUrl 解析项目的功能。我们拥有的唯一功能是:

var item = $models.getItem(tcmUri);
item.getWebDavUrl();   // will return you WebDAVUrl, if it was loaded before
item.loadWebDavUrl();  // will make async call to load WebDAVUrl. "loadwebdavurl" or "loadwebdavurlfailed" will be fired on the item afterwards
于 2012-12-12T08:16:40.803 回答