例如,我可以訪問在Sitecore中創建的配置文件,並且可以獲取它的名稱。Sitecore:無法獲取多列表項目中的所有值
(Sitecore的)設置>檔案> UserTypes>娛樂執行> AR執行
<xsl:variable name="ARExec" select="$UserTypes/item[3]/item[1]"/>
上面的代碼將打印出AR執行
現在AR執行的內部我有一個多名單命名相關類型類型,裏面是:
- 音樂
- 喜劇
- 電視
我一直努力遵循這裏的例子: http://sdn.sitecore.net/Articles/XSL/Accessing%20Field%20Values/Multilist.aspx
但是我無法重現的結果,我希望能夠得到和列表出了所有3個名字,但它只讓我抓住音樂,第一個項目。我想弄清楚如何遍歷Multilist中的項目並將它們全部顯示出來。
<xsl:template match="*" mode="main">
....
<xsl:variable name="ARExec" select="$UserTypes/item[3]/item[1]"/>
<lable><xsl:value-of select="sc:fld('Related Genre Types', $ARExec)"/></lable>
<xsl:variable name="ids" select="concat(sc:fld('Related Genre Types',$ARExec),'|')"/>
<xsl:call-template name="PrintTitles">
<xsl:with-param name="ids" select="$ids"/>
</xsl:call-template>
</xsl:template>
<xsl:template name="PrintTitles">
<xsl:param name="ids"/>
<xsl:if test="$ids">
<xsl:variable name="itm_id" select="substring-before($ids, '|')"/>
<xsl:if test="$itm_id">
<xsl:variable name="itm" select="sc:item($itm_id,.)"/>
<xsl:value-of select="sc:fld('Title', $itm)"/> &
</xsl:if>
<xsl:call-template name="PrintTitles">
<xsl:with-param name="ids" select="substring-after($ids, '|')"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
^打印出{id號...}音樂&
我如何通過我的多重表圈抓住並打印出所有3個項目?
嗯,我得到一個「XSL文件無法處理」錯誤現在,我開始從頭開始,看看我是否可以重做這個,謝謝花點時間看看這個! – 2013-04-25 18:46:38
噢,我想我想通了,不得不使用一個鍵來定位'配置文件'我試圖獲得多元列表: –
2013-04-25 20:44:46
我知道你已經知道了 - 儘管我確實修復了XSLT代碼。最後一件事:如果您遇到錯誤「Xsl文件無法處理」,您通常可以單擊感嘆號來顯示有關錯誤的更多詳細信息。 – Trayek 2013-04-26 08:07:41