У меня есть то, что я чувствую, очень простой вопрос о Umbraco, но тот, у которого пока нет явного ответа.
У меня есть шаблон бритвы, стандартный материал, с @отображением переменных и некоторым встроенным кодом С#.
В какой-то момент в шаблоне я использую:
@Umbraco.RenderMacro("myCustomMacro");
проблем нет, все работает так, как ожидалось.
Теперь этот макрос вставлен на каждую страницу (он находится в главном шаблоне), но у меня есть свойство страницы, которое позволяет авторам контента включать и выключать его с помощью флажка в свойствах страницы, опять же настолько хорошего все работает отлично.
Однако теперь я обнаружил, что для определенного типа документа этот компонент ДОЛЖЕН отображаться, поэтому я пытался найти способ выполнить эту проверку.
Теперь, на мой взгляд, это должно быть так же просто, как сделать что-то вроде этого:
@{
if(CurrentPage.documentType == "someDocTypeAliasHere")
{
//Render the macro
}
else
{
// Render the macro only if the tick box is checked
}
}
как я уже сказал, это (или я считаю, что это должно быть так или иначе) очень простая операция, но та, которая пока не имеет результата.
Что я пробовал до сих пор?
Хорошо, кроме чтения каждой страницы нашего-umbraco, в которой упоминаются все, что связано с бритвой и переменной @CurrentPage, Iv'e прошел через чит-лист свойств бритвы и попытался использовать наиболее общие свойства, включая ( В определенном порядке):
@CurrentPage.NodeTypeAlias
@CurrentPage.NodeType
@CurrentPage.ContentType
@CurrentPage.DocumentType
и различные комбинации буквенных букв, плюс некоторые другие, которые выглядели так, как будто они могли соответствовать счету.
Впоследствии свойства либо не существуют, либо являются пустыми, поэтому в них нет полезной информации, чтобы помочь определить результат.
Итак, теперь, после нескольких дней кругосветного кружка, и никуда не дену, я нахожусь здесь.
(Обратите внимание: это не поиск вопроса XSLT, или итерация дочерней коллекции или что-то в этом роде, поэтому любые запросы на отправку XSLT, макросов, шаблонов страниц или что-то в этом роде будут отклоняться, все, что мне нужно сделать найти способ определения типа документа текущей отображаемой страницы.)
Приветствия
Shawty
PS: Забыл упомянуть, я использую
umbraco v 4.11.8 (версия сборки: 1.0.4869.17899)
На всякий случай кто-нибудь спрашивает.