0

给定一个具有组件 A 和组件 A 的页面已发布到 LIVE 目标。稍后,相同的组件 A 已被修改并再次发布到 Staging 目标。

我们需要知道组件 A 的哪个版本已发布到 LIVE,以及组件 A 的哪个版本已发布到 Staging。是否可以获得每个目标中已发布的组件的版本?

4

1 回答 1

3

您正在寻找的是不可能的 OOTB。但是,您可以使用 推断此信息PublishEngine.GetPublishInfo(IdentifiableObject item),它会返回一个ICollection<PublishInfo>,其中包含项目发布的日期。

然后,您可以将此信息与项目的版本信息相结合,并确定(通过查看发布时间与版本签入时间)发布时使用的版本。

但是,版本可能会被删除,因此无法保证此方法会为您提供正确的信息。

我建议您将 Page 的版本发布为 CustomMeta(可能使用类似于 TDFramework 的一部分 MetaDataProcessor 的东西来即时创建元数据)。然后,您可以查询 Content Delivery DB 并检索此信息。

或者,对于 CM 端解决方案,您可以使用事件系统并拦截发布操作。然后由您来存储页面的版本(例如,应用程序数据可能是一个不错的选择)。

于 2013-06-19T15:07:04.053 回答