Я пытаюсь использовать XSLT для создания Edge Side Включает html-блоки.
Вот пример XSLT
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:esi="http://www.edge-delivery.org/esi/1.0"
exclude-result-prefixes="xsl esi">
<xsl:output method="html"
media-type="text/html"
version="1.0"
encoding="UTF-8"
indent="no"
omit-xml-declaration="yes"/>
<xsl:template match="/">
<esi:vars>
<xsl:text>some text goes here</xsl:text>
</esi:vars>
</xsl:template>
</xsl:stylesheet>
Пока преобразование работает само по себе, вывод выглядит так:
<esi:vars xmlns:esi="http://www.edge-delivery.org/esi/1.0">some text goes here</esi:vars>
Проблема в том, что атрибут xmlns: esi ужасно нарушает выполнение ESI.
Если я удаляю атрибут вручную (например, открываю HTML и удаляю его, снова сохраняя блок кода), все работает нормально.
Вопрос: Как я могу удалить xmlns: esi из вывода HTML?
Я пытался включить его в префиксы exclude-results-, но не получилось.
Пример вывода, который будет работать:
<esi:vars>some text goes here</esi:vars>