Мне удалось опубликовать двоичные файлы в шаблоне компонента XSLT (CT), обратившись к пространству имен TcmScriptAssistant (xmlns: tcmse = "http://www.tridion.com/ContentManager/5.1/TcmScriptAssistant") и используя следующее:
<h2>PublishBinary()</h2>
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="tcmse:PublishBinary(string(./@xlink:href))" />
</xsl:attribute>
<xsl:value-of select="./@xlink:title" />
</xsl:element>
Я недавно пыталсяAddBinary:
<h2>AddBinary() with webdav</h2>
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="tcmse:AddBinary(string(./@xlink:href), '/webdav/040 CreateandBreak/Root/Media/Image', 'some_variant')" />
</xsl:attribute>
<xsl:value-of select="./@xlink:title" />
</xsl:element>
Результирующая разметка для обоих:
<h2>PublishBinary()</h2>
<a href="/Media/buddy_tcm7-274.jpg">buddy</a>
<h2>AddBinary() with webdav</h2>
<a href="/Media/Image/buddy.jpg">buddy</a>
Я вижу, что addBinary использовал другую папку (структурную группу), как указано во втором параметре.
Я неправильно ввел третий параметр для String variableID? Я не уверен, должен ли я видеть его текст в имени .jpg.
Любые другие различия между PublishBinary иAddBinary, особенно при использовании XSLT CT?
Я пытаюсь понять, следует ли использовать один поверх другого.
Для пояснения, я считаю, что это объектная модель Tridion AddBinaryпод классом TCMScriptAssistant (не TOM.NET). Я уверен, что CT XSLT останутся поддерживаемыми, но я задам другой вопрос о лучших способах обработки двоичных файлов, возможно, в модульных шаблонах.
Другая информация: - Схема Tridion 2011 SP1 содержит ссылки на мультимедийный компонент, встроенный в страницу с помощью XSLT CT, для создания «статических» презентаций компонента