Как передать аргумент «список» макросу Umbraco? - PullRequest
0 голосов
/ 22 марта 2011

У меня есть макрос Umbraco, в который я хотел бы передать аргумент "list" & mdash; у меня есть несколько элементов, которые я преобразовываю с помощью XSLT, и я хотел бы преобразовать некоторые из них «особым» способом.

В идеале я хотел бы попробовать что-то вроде этого:

<umbraco:Macro Alias="DoStuff" runat="server">
    <styleThisSpecially>NameOfElement1</styleThisSpecially>
    <styleThisSpecially>NameOfElement2</styleThisSpecially>
</umbraco:Macro>

К сожалению, это не работает & mdash; элементы "styleThisSpecial" не распознаются.

Обходные пути, которые я могу придумать:

  1. передача аргументов типа "styleThisSpecial1", "styleThisSpecial2", "styleThisSpecial3", ...
  2. передача моего аргумента в виде списка через запятую, например "styleThisSpecial = 'val1, val2, val3'"

... но ни один из этих вариантов не кажется очень "аккуратным". Я попытался использовать несколько атрибутов "styleThisSpecial" в элементе umbraco: Macro, но это вызвало ошибку ("тег содержит дубликаты атрибутов" expandBox "").

Есть ли чистый и аккуратный способ сделать это?

1 Ответ

0 голосов
/ 04 февраля 2013

Если я вас правильно понимаю, вы начинаете с «точки X» и прорабатываете все элементы и хотите передать их все в макрос в виде списка. Вероятно, более аккуратное решение: 1. Позвольте странице не только найти элементы, но также итерировать их и передавать их по одному макросу для «рендеринга / обработки / чего угодно» 2. Передайте «точку X» макросу и дайте макросу разобраться, что это за элементы?

На самом деле не дает ответа на вопрос, можете ли вы передать список элементов макросу, но я думаю, что возможно (конечно, если вы работаете в XSLT), это редко то, что вы хотели бы сделать.

...