2013-07-07 42 views
0

我从Umbraco中的宏获取图像文件夹参数(存在于媒体部分中的文件夹),然后遍历所有图像。首先,我检查该文件夹不是空的,然后在循环过程中,我进一步尝试检查图像名称是否等于“marhall_spadayhpbanner_jul131%20(4).jpg”,然后我需要将不同的链接添加到锚点。我已经尝试了以下xslt代码,但由于某种原因它没有按预期工作,第二种情况(当图片等于'media/42595/marhall_spadayhpbanner_jul131%20(4).jpg')从未如此。umbraco宏XSLT不工作

任何想法感谢

<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> 
+0

我怀疑'%20'可能与此有关,但没有看到您的输入XML,没有人能够帮助您。 – Tomalak

+0

我没有xml不幸的分享,但以下是这个xslt代码的输出 – rumi

+0

你是什么意思,你没有输入XML?移除您不想分享的任何细节,然后分享。无论如何,这里有一个提示:输出中没有'%20'。 – Tomalak

回答

0

在更换20%的if语句来的空间。这应该解决它。