Требуется небольшое руководство с XSLT и Umbraco. Довольно новый для XSLT, но я думаю, что понимаю понятия. Прямо на одной странице у меня есть две колонки, каждая из которых имеет свой собственный отдельный файл pickable. Это делается через стандартное свойство выбора контента (по одному для каждого столбца). Проблема в том, что мне нужно иметь два разных шаблона на странице. Таким образом, по существу, страница переходила к двум, у которых столбцы должны отображать два своих дочерних элемента на своей собственной странице.Umbraco XSLT RenderTemplate Woes
У меня это работает с одним столбцом, используя общий 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>
Любой знает, почему это не работает, и как делать то, что я после этого? Приведенное выше значение означает либо слишком большую, либо слишком небольшую ошибку.
Спасибо за ответ, я оглянулся, и из того, что я мог видеть, вы могли бы передать в nodeID свой собственный. Я дам ему тест с идентификатором templateID, но я не думаю, что это ошибка. Я вырыл немного больше, и кажется, что независимо от того, какая переменная nodeID никогда не получает никаких данных. Я напечатал контент Picker на странице в дизайнере шаблонов с помощью < ', который печатает правильные данные, но используя его в XLST, он никогда не получает данные. –
Dilvid
Какую версию Umbraco вы используете? –
umbraco v 4.7.1 (Сборочная версия: 1.0.4281.20201) Вы можете увидеть сайт - http://priority.wireddotnet.co.uk/ – Dilvid