【发布时间】:2012-02-23 10:47:19
【问题描述】:
我们正在使用带有 XSLT 模板的 Tridion 2009 SP1
全新的多媒体组件(v0.0)及其上传的二进制文件
将正确发布到预览站点
首次保存(二进制文件的发布由
tbbPublishMultimedia 模板,如下所示)。
多媒体组件将作为次要修订进入工作流程 版本 v0.1 并在工作流程中(在“准备版本内容 Item") 可以编辑组件并重新上传二进制文件 由作者按要求放入组件中。
每次将 v0.x 组件保存在工作流中(如 v0.1、v0.2、 v0.3、v0.4 等)组件的最新“工作流程中”版本 并且其二进制文件将正确发布到预览站点。
每次多媒体组件被批准发布时 离开工作流程并成为新的主要版本(例如 v1.0.... 或 v2.0、v3.0 等)。
如果主要版本随后被编辑并重新保存,它将成为 新的次要修订版本(例如 v1.1)然后将重新发布到 预览站点(以及它的二进制文件),然后它将重新进入 工作流程。
然而,虽然 Tridion 正确地发布了最新的次要版本 实际多媒体组件的版本(例如 v1.1)似乎 仅发布它包含的二进制文件的最后一个主要版本 (例如 v1.0 版本)。有趣的是,它似乎确实发布了 该二进制文件的最新 v1.1 元数据(即文件类型和 文件大小),但不是二进制文件本身。
总之,Tridion 似乎发布了最新的次要/修订版“in 工作流”版本的二进制文件,如果多媒体组件是 v0.x 但是一旦存在主要版本,它只会发布最后一个主要版本 二进制文件的版本(本质上是重新输入之前的版本) 工作流程)。
反正就是这个样子……
<xsl:template name="tbbPublishMultimedia">
<xsl:if test="string(//tcm:Type)='Multimedia'">
<xsl:variable name="binaryid"
select="string(//tcm:Component/@ID)"/>
<xsl:element name="tcm:MultimediaPublishedFileName">
<xsl:value-of select="tcmse:PublishBinary($binaryid)"/>
</xsl:element>
</xsl:if>
</xsl:template>
注意...在上面的模板中,可以将主要版本指定为
tcmse:PublishBinary parameter 例如 concat($binaryid,"-v2") 到
确定要发布的版本,但因为它不允许您指定
次要版本,所以这并没有太大帮助
【问题讨论】:
-
哪个用户在运行发布者服务?
标签: tridion