Нуждается в небольшом руководстве с XSLT и Umbraco. Довольно новый для XSLT, но я думаю, что понимаю концепции. Прямо на одной странице у меня есть два столбца, каждый со своим отдельным выбираемым контентом. Это делается с помощью стандартного свойства выбора контента (по одному для каждого столбца). Проблема в том, что мне нужно иметь два разных шаблона на странице. Таким образом, по сути, страница, на которой перемещаются две колонки, должна отображать два дочерних элемента на своей странице.
Я работаю с одним столбцом, используя общий XSLT, который, как я обнаружил, в основном просто отображает то, что находит дочерний элемент, но я хочу, чтобы он отображал то, что выбрал пользователь.
Я знаю, что Content Picker возвращает идентификатор XML-узла страницы, и его можно использовать с функцией Render Template для его отображения (у меня есть пример этого), но когда дело доходит до добавления в мои собственные свойства, а затем Передав их в функцию RenderTemplate, я заблудился. Новое в этом XSLT:).
Пока у меня есть ...
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp " "> ]>
<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">
<xsl:output method="html" omit-xml-declaration="yes"/>
<xsl:param name="currentPage"/>
<xsl:variable name="nodeID" select="data[@alias='leftColumn']"/>
<xsl:template match="/">
<xsl:value-of select="umbraco.library:RenderTemplate($nodeID)" disable-output-escaping="yes"/>
</xsl:template>
</xsl:stylesheet>
Кто-нибудь знает, почему это не работает и как делать то, что мне нужно? Приведенное выше значение дает либо слишком большую, либо слишком маленькую ошибку.