我的目的是創建一個新聞列表,並且會附加一個縮略圖(news_teaserimage)給一些新聞。問題是,如果我只在某些節點中選擇媒體,我會得到一個xslt錯誤,並且不會生成任何代碼。如果我在所有節點中選擇媒體,那麼它的工作原理是:無論有沒有圖像,代碼都會生成節點。如果沒有選擇圖像,則不會顯示。Umbraco - 顯示不是所有媒體都被選中時的節點
我在做什麼錯?
<ul> <xsl:for-each select="umbraco.library:GetXmlNodeById($source)/* [@isDoc and string(umbracoNaviHide) != '1']"> <xsl:variable name="media" select="umbraco.library:GetMedia(news_teaserimage, 0)"/> <li> <h2><xsl:value-of select="@nodeName"/></h2> <h5><xsl:value-of select="@createDate"/></h5> <xsl:if test="news_teaserimage"> <img src="{$media/umbracoFile}" width="70" height="70" style="float: left; padding-right: 10px; padding-bottom: 10px;" /> </xsl:if> <xsl:value-of select="news_shorttext" disable-output-escaping="yes"/> <xsl:if test="news_largetext"> <br /> <a style="float: left; clear: both; margin-top: -10px;" href="{umbraco.library:NiceUrl(@id)}"> Read more </a> </xsl:if> </li> </xsl:for-each> </ul>
你能包括在你的問題的確切的錯誤信息,也。是否「Int32對於Int32來說價值不是太大就是太小」。 – 2012-04-05 00:50:01
將xsl:variable標籤中的「umbraco.library:GetMedia(news_teaserimage,0)」移動到xsl:if標籤中,然後將該xsl:wrap包裝在裏邊的所有其他代碼中 – 2012-07-30 21:37:46