【问题标题】:Umbraco Only display child node if the DocumentTypeAlias is equal toUmbraco 仅当 DocumentTypeAlias 等于时才显示子节点
【发布时间】:2019-09-27 20:44:58
【问题描述】:

我正在使用 Umbraco 7。我有一个包含 2 种不同类型子节点的父节点。

关于

--Bio 1(子节点类型1)

--Bio 2(子节点类型1)

--FAQ 1(子节点类型2)

--FAQ 2(子节点类型2)

如果子节点文档类型是==到“fAQ”显示FAQ,我想做的只是显示一种类型的子节点ie

    @{ var selection = CurrentPage.Children.Where("Visible") && Model.Content.DocumentTypeAlias == "fAQ";  }
    @{ var i = 1; }
    @foreach (var item in selection)
    {
  <p>Hello I am an FAQ child node</p>
        i+=1;
    }

我的问题来自 Model.Content.DocumentTypeAlias == "fAQ";我觉得……

我一辈子都想不通这个。任何帮助表示赞赏。

【问题讨论】:

  • var selection = CurrentPage.Children.Where("Visible").Where(c => c.DocumentTypeAlias == "fAQ");也许是这样的?我没有得到你的问题
  • 嗨@AlexKvitchastiy 这似乎不起作用。为了简化问题:如果 DocumentTypeAlias 具有特定名称,如何仅显示子节点?
  • 您的模型构建者怎么说? PureLive?

标签: asp.net razor umbraco umbraco7


【解决方案1】:

你应该能够做到:

var children = new List<IPublishedContent>();
if (Model.Content.DocumentTypeAlias == "fAQ") { 
   children = Model.Content.Children().Where(i => i.IsVisible());
}

如果您只想显示“fAQ”类型的子节点,您可以执行以下操作:

var children = Model.Content.Children().Where(i => i.DocumentTypeAlias == "fAQ" && i.IsVisible());

【讨论】:

    猜你喜欢
    • 2016-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-22
    • 1970-01-01
    • 2019-03-20
    • 2015-10-10
    • 1970-01-01
    相关资源
    最近更新 更多