我从SDL Tridion论坛得到了答案,我们可以为其中包含“text”字段的嵌入式架构“段落”启用内联编辑。
如果有人帮助我为简单字段启用它,那将会非常有用。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<xsl:for-each select="//*[local-name()='paragraph']">
<div>
<tcdl:ComponentField name="paragraph[{position() -1}].text" index="0">
<xsl:apply-templates select="./*[local-name()='text']"/>
</tcdl:ComponentField>
</div>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
此代码循环遍历每个嵌入的段落字段,输出文本字段的值并使用适当的SiteEdit TCDL语法对其进行包装。
我正在使用Tridion 2011 SP1和SDLTridionworld.com的XSLT调解员。
假设我的组件有一个名为“pageHeader”的字段。我们如何在XSLT TBB中启用内联编辑。
答案 0 :(得分:2)
我认为以下情况应该起作用:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<xsl:for-each select="//*[local-name()='pageHeader']">
<div>
<tcdl:ComponentField name="pageHeader[{position() -1}]" index="0">
<xsl:apply-templates select="."/>
</tcdl:ComponentField>
</div>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
或者如果它是单个值字段:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<h1>
<tcdl:ComponentField name="pageHeader" index="0">
<xsl:value-of select="//*[local-name()='pageHeader'"/>
</tcdl:ComponentField>
</h1>
</xsl:template>
</xsl:stylesheet>