Umbraco 7.5.1 umbracoNaviHide
Umbraco 7.5.1 umbracoNaviHide
为了能够过滤掉不应使用 .Where("Visible") 呈现的项目,我需要一个名为 umbracoNaviHide 的 属性 returns true 或 false。
在早期版本中,这是添加到通用选项卡中的。但是现在您不能再附加到该选项卡。
我现在如何完成隐藏页面?
这是我的foreach:
@foreach (var Area in Model.Content.Children.Where("Visible"))
{
这是关于它的声明。但我找不到任何解决方法。
Related Changes Summary - 7.4 beta - Option toCannot add properties to the "Generic properties" tab
说明 - 在 7.4 测试版中无法再添加
"Generic properties" 选项卡的属性。我知道这已经完成了
因为属性在该选项卡上可能有点隐藏,通常是
在单独的选项卡上更好。但有些情况下
该选项卡上的属性更好。
您可以将 属性 作为 true/false 数据类型添加到任何选项卡。然而,重要的是要注意 umbracoNaviHide 没有做任何特别的事情它只是一个神奇的字符串,当实现为 true/false 数据类型时,它适用于
.Where("Visible").
我个人不再使用它了。如果我需要使项目可见或不可见,那么我会更具体地命名 属性。例如,在实现您希望某些节点可见但其他节点不可见的菜单时,它通常很有用。我通常有一个菜单选项卡,其中一个属性是名为 Show in menu 的 true/false 类型,别名为 showInMenu
。
在代码中它可能像下面这样(我已经使用 TypedContentAtXPath 来获取特定文档类型的父节点。当然有多种方法可以做到这一点)
var homeNode = Umbraco.TypedContentAtXPath("//MyHomePageDocType").First();
var menuItems = homeNode.Children.Where(item=>item.GetPropertyValue<bool>("showInMenu"));
foreach(var item in menuItems)
{
// Do your menu stuff here
}
希望对您有所帮助
J
您可以创建一个用于显示或隐藏菜单项的复选框的节点可见性组合。并且您可以将此继承到您不想显示的文档类型。
然后你可以做
_homeNode.Children.Where(x => !x.GetPropertyValue<bool>("hideInNavigation"));
希望对您有所帮助!
为了能够过滤掉不应使用 .Where("Visible") 呈现的项目,我需要一个名为 umbracoNaviHide 的 属性 returns true 或 false。
在早期版本中,这是添加到通用选项卡中的。但是现在您不能再附加到该选项卡。
我现在如何完成隐藏页面?
这是我的foreach:
@foreach (var Area in Model.Content.Children.Where("Visible"))
{
这是关于它的声明。但我找不到任何解决方法。
Related Changes Summary - 7.4 beta - Option toCannot add properties to the "Generic properties" tab
说明 - 在 7.4 测试版中无法再添加 "Generic properties" 选项卡的属性。我知道这已经完成了 因为属性在该选项卡上可能有点隐藏,通常是 在单独的选项卡上更好。但有些情况下 该选项卡上的属性更好。
您可以将 属性 作为 true/false 数据类型添加到任何选项卡。然而,重要的是要注意 umbracoNaviHide 没有做任何特别的事情它只是一个神奇的字符串,当实现为 true/false 数据类型时,它适用于
.Where("Visible").
我个人不再使用它了。如果我需要使项目可见或不可见,那么我会更具体地命名 属性。例如,在实现您希望某些节点可见但其他节点不可见的菜单时,它通常很有用。我通常有一个菜单选项卡,其中一个属性是名为 Show in menu 的 true/false 类型,别名为 showInMenu
。
在代码中它可能像下面这样(我已经使用 TypedContentAtXPath 来获取特定文档类型的父节点。当然有多种方法可以做到这一点)
var homeNode = Umbraco.TypedContentAtXPath("//MyHomePageDocType").First();
var menuItems = homeNode.Children.Where(item=>item.GetPropertyValue<bool>("showInMenu"));
foreach(var item in menuItems)
{
// Do your menu stuff here
}
希望对您有所帮助
J
您可以创建一个用于显示或隐藏菜单项的复选框的节点可见性组合。并且您可以将此继承到您不想显示的文档类型。
然后你可以做
_homeNode.Children.Where(x => !x.GetPropertyValue<bool>("hideInNavigation"));
希望对您有所帮助!