У меня есть несколько файлов xslt, которые всегда работали до тех пор, пока они вдруг не начали выдавать ошибки сегодня.Я просмотрел свои журналы, и это сообщение об ошибке я вижу:
A rendering error occurred: Xsl file could not be processed (details: System.Xml.XmlException: The ' ' character, hexadecimal value 0x20, cannot be included in a name.
Это мой один из моих файлов xslt для компонента Breadcrumb:
<!-- output directives -->
<xsl:output method="xml" indent="no" encoding="UTF-8" />
<!-- parameters -->
<xsl:param name="lang" select="'en'"/>
<xsl:param name="id" select="''"/>
<xsl:param name="sc_item"/>
<xsl:param name="sc_currentitem"/>
<xsl:include href="./Includes/Navigation.xslt"/>
<!-- entry point -->
<xsl:template match="*">
<xsl:apply-templates select="$sc_item" mode="main"/>
</xsl:template>
<!--==============================================================-->
<!-- main -->
<!--==============================================================-->
<xsl:template match="*" mode="main">
<xsl:if test="sc:fld('Hide Breadcrumb',.) !='1'">
<div id="breadcrumb">
<xsl:for-each select="$sc_currentitem/ancestor-or-self::item[sc:fld('Show Page in Breadcrumb',.) = '1']">
<xsl:choose>
<xsl:when test="position()!= last()">
<xsl:call-template name="createLink">
<xsl:with-param name="item" select="." />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="linkText">
<xsl:with-param name="item" select="." />
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="position()!= last()">
›
</xsl:if>
</xsl:for-each>
</div>
</xsl:if>
</xsl:template>
Navigation.xslt:
Я попытался удалить все из Breadcrumb.xslt, чтобы сделать это просто так:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:sc="http://www.sitecore.net/sc"
xmlns:dot="http://www.sitecore.net/dot"
exclude-result-prefixes="dot sc">
<!-- output directives -->
<xsl:output method="xml" indent="no" encoding="UTF-8" />
<!--==============================================================-->
<!-- main -->
<!--==============================================================-->
<xsl:template match="*" mode="main">
<h1>Test</h1>
</xsl:template>
</xsl:stylesheet>
... но я все еще получаюошибка.Недавно я внес некоторые изменения в свои шаблоны в Sitecore, чтобы добавить поля заголовка навигации для нескольких элементов, но после всех последних изменений он работал нормально, и я не знаю, почему он все еще ломается, даже когда все, что у меня есть, есть <h1>Test</h1>