我希望能够向使用XSLT创建的图像添加"Title“变量。具体地说,我使用的是名为"Teasers.xslt“的文件,它是Sitecore6 Starter Kit的一部分。每个标题的文本将是在Sitecore内容编辑器中维护的“摘要摘要”。
我的理解是,我可以在"showteaser“xsl模板中添加一个新的变量,该变量可以用来查询摘要,如下所示:
<xsl:variable name="title" select="sc:item(sc:fld('teaser abstract',.),.)" />如果这是正确的,是否可以添加这个新的标题变量作为图像的属性?下面是完整的"showteaser“(来自Teasers.xslt)的xsl模板,我想在其中插入新的标题属性:
<xsl:template name="showteaser">
<xsl:param name="teaser_item" />
<xsl:variable name="teaser" select="sc:item($teaser_item,.)" />
<xsl:variable name="teaser_link" select="sc:item(sc:fld('teaser link',.),.)" />
<sc:link field="teaser link" select="$teaser">
<sc:image field="teaser image" select="$teaser" class="photo-border" w="200" h="100" as="1" bc="white" />
</sc:link>
<h2>
<sc:link field="teaser link" select="$teaser">
<sc:text field="teaser title" select="$teaser" />
</sc:link>
</h2>
<p>
<sc:memo field="teaser abstract" select="$teaser" />
</p>
<div class="read-more-link">
<sc:link field="teaser link" select="$teaser">
<sc:text field="text" select="$readmore" />
</sc:link>
</div>
</xsl:template>我曾尝试将title作为变量添加到sc:link中,但没有成功。我关于如何走这条路的假设是错误的吗?提前感谢,非常感谢您的帮助!
发布于 2012-04-16 21:31:05
您现在可能已经解决了您的问题,但为了未来用户的利益:
似乎您必须将标题属性放入 -tag中。您可以使用属性值模板来执行此操作。也就是说,把你的表达式放在卷曲的巴克斯里:
<sc:image field="teaser image" select="$teaser" class="photo-border" w="200" h="100" as="1" bc="white" title="{sc:fld('teaser abstract',.)}" />发布于 2010-11-18 23:57:09
你可以使用这样的东西吗:
<sc:link field="teaser link" select="$teaser">
<sc:image field="teaser image" select="$teaser" class="photo-border" w="200" h="100" as="1" bc="white" >
<xsl:attribute name="title">
<xsl:value-of select="sc:fld('teaser abstract',.)" />
</xsl:attribute>
</sc:image>
</sc:link>你不应该这样做,这只是一个建议,我还没有测试过。
https://stackoverflow.com/questions/4187607
复制相似问题