Здравствуйте.
Столкнулась с такой проблемой: на сайте в разделе новостей реализую такой момент, в дополнительное свойство (свойство типа строка) вводится часть названия и в списке новостей ссылка с новости идет не со всего заголовка, а только с этой части.
Реализуется это так:
<xsl:choose>
<xsl:when test="property_value[tag_name='link']/value!=''">
<xsl:variable name="input"><xsl:value-of disable-output-escaping="yes" select="description"/></xsl:variable>
<xsl:variable name="from"><xsl:value-of disable-output-escaping="yes" select="property_value[tag_name='link']/value"/></xsl:variable>
<xsl:choose>
<xsl:when test="contains($input, $from)">
<!-- вывод подстроки предшествующей образцу + вывод строки замены -->
<xsl:value-of disable-output-escaping="yes" select="substring-before($input, $from)"/><a href="{url}">
<xsl:value-of disable-output-escaping="yes" select="$from"/></a><xsl:value-of disable-output-escaping="yes" select="substring-after($input, $from)"/>
</xsl:when>
<xsl:otherwise>
<a href="{url}">
<xsl:value-of disable-output-escaping="yes" select="name"/>
</a>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<a href="{url}">
<xsl:value-of disable-output-escaping="yes" select="name"/>
</a></xsl:otherwise>
</xsl:choose>
В пятой версии все работало отлично, а вот в 6 почему-то если в строке содержится символ "«" или "»" то строка не находится и все слетает, пока я не заменяю их (в дополнительном свойстве, при чем в названии все остается символами) на "laquo" и "raquo" соответственно.
Почему так может быть?