Umbraco "Ошибка анализа файла XSLT"

Я создал сайт с использованием Umbraco 4.9.0 и все хорошо локально. Я опубликовал его и запустил из IIS. Но теперь это работает, за исключением того, что для файла XSLT (Breadcrumb), на который есть ссылка на целевой странице, написано "Ошибка синтаксического анализа файла XSLT {имя файла xslt}".

Ошибка: "Ошибка разбора файла XSLT: \xslt\SiteBreadcrumb.xslt"

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE xsl:stylesheet [

   <!ENTITY nbsp "&#x00A0;"> ]> <xsl:stylesheet   version="1.0"
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxml="urn:schemas-microsoft-com:xslt"
    xmlns:umbraco.library="urn:umbraco.library"
   xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon"
   xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes"
   xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath"
   xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions"
   xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings"
   xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets"
   xmlns:tagsLib="urn:tagsLib" xmlns:BlogLibrary="urn:BlogLibrary"
   xmlns:UCommentLibrary="urn:UCommentLibrary"
    exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon
   Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions
   Exslt.ExsltStrings Exslt.ExsltSets tagsLib BlogLibrary UCommentLibrary
   ">   <xsl:output method="xml" omit-xml-declaration="yes"/>
   <xsl:param name="currentPage" select="/.."/>   <xsl:variable name="minLevel"
   select="1"/>   <xsl:template match="/">
       <xsl:if test="$currentPage/@level &gt; $minLevel">
         <tr>
           <xsl:for-each select="$currentPage/ancestor::* [@level &gt; $minLevel and string

(umbracoNaviHide) != '1']">
             <td style=" height: 24px;">
               <a href="{umbraco.library:NiceUrl(@id)}?nodeId={@id}" style="color:black;">
                 <xsl:value-of select="@nodeName"/>
               </a>
               &gt;
             </td>
           </xsl:for-each>
         </tr>
       </xsl:if>   </xsl:template> </xsl:stylesheet>

Кто-нибудь знает, почему все файлы XSLT не будут анализироваться?

1 ответ

Решение

Ошибка в этой инструкции:

   <xsl:if test="$currentPage/@level &gt; $minLevel">

Саксонский 6.5.5 говорит:

Ошибка в xsl: если в строке 21 файла:/(Без названия): значение не является набором узлов

Одним из возможных решений является замена:

<xsl:param name="currentPage"/>

с:

<xsl:param name="currentPage" select="/.."/>

так что теперь процессор XSLT знает, что $currentPage содержит узел

Другие вопросы по тегам