【问题标题】:umbraco macro XSLT not workingumbraco 宏 XSLT 不工作
【发布时间】:2013-07-07 08:05:55
【问题描述】:

我从 Umbraco 的宏中获取了一个图像文件夹参数(媒体部分中的文件夹),然后循环遍历所有图像。首先我检查该文件夹是否为空,然后在循环期间我进一步尝试检查图像名称是否等于“marhall_spadayhpbanner_jul131%20(4).jpg”,然后我需要放置一个不同的链接到锚点。我尝试了以下 xslt 代码,但由于某种原因,它没有按预期工作,并且第二个条件(当图像等于 'media/42595/marhall_spadayhpbanner_jul131%20(4).jpg' 时)永远不会正确。

任何想法谢谢

<xsl:for-each select="$imageFolderContents/node [@nodeTypeAlias='Image']">
    <xsl:if test="string(current()/data [@alias='umbracoFile']) != ''">
        <a href="www.somelink.com">
            <img alt="{current()/@nodeName}">
                <xsl:attribute name="src"><xsl:value-of select="current()/data [@alias='umbracoFile']"/></xsl:attribute>
            </img>
        </a>
    </xsl:if>
    <xsl:if test="string(current()/data [@alias='umbracoFile']) = 'media/42595/marhall_spadayhpbanner_jul131%20(4).jpg'">
        <a href="someotherlink.com">
            <img alt="{current()/@nodeName}">
                <xsl:attribute name="src"><xsl:value-of select="current()/data [@alias='umbracoFile']"/></xsl:attribute>
            </img>
        </a>
    </xsl:if>
</xsl:for-each>

输出是代码

<div style="clear: both; position: relative; height: auto;" class="slideshow innerfade"><a href="http://gifts.skchase.com/marhall/summerspa/" style="z-index: 5; position: absolute; display: none;"><img alt="dont be a fool" src="/media/42595/marhall_spadayhpbanner_jul131 (4).jpg"></a><a href="https://gifts.skchase.com/marhall/summerspa/" style="z-index: 4; position: absolute; display: block;"><img alt="dont be a fool" src="/media/42595/marhall_spadayhpbanner_jul131 (4).jpg"></a><a href="http://gifts.skchase.com/marhall/summerspa/" style="z-index: 3; position: absolute; display: none;"><img alt="MH-Ext-16-hero.jpg" src="/media/1548/MH-Ext-16-hero.jpg"></a><a href="http://gifts.skchase.com/marhall/summerspa/" style="z-index: 2; position: absolute; display: none;"><img alt="golf_hero_arial_new.jpg" src="/media/1816/golf_hero_arial_new.jpg"></a><a href="http://gifts.skchase.com/marhall/summerspa/" style="z-index: 1; position: absolute; display: none;"><img alt="MH-Spa-e-25-hero.jpg" src="/media/1552/MH-Spa-e-25-hero.jpg"></a></div>

【问题讨论】:

  • 我怀疑%20 可能与此有关,但如果没有看到您的输入 XML,没有人可以帮助您。
  • 不幸的是,我没有要分享的 xml,但以下是此 xslt 代码的输出
  • 什么意思,您没有输入 XML?删除您不想分享的任何细节,然后分享。无论如何,这里有一个提示:输出中没有%20

标签: xslt umbraco


【解决方案1】:

将 if 语句中的 %20 替换为空格。那应该可以解决它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多