Magnolia 防止使用父页面模板创建子页面

Posted

技术标签:

【中文标题】Magnolia 防止使用父页面模板创建子页面【英文标题】:Magnolia prevent creating child page with parent page template 【发布时间】:2014-07-09 08:35:32 【问题描述】:

在木兰中,我的站点层次结构如下

Page 1
  Page 1.1
     Page 1.1.1
  Page 1.2
Page 2
 Page 2.1
Page 3

等等。

但是我也可以在页面 1.1 下创建页面模板 1.1,如何防止这种情况发生?

我阅读了类别和可用性以及所有内容,但这没有帮助?

任何帮助

【问题讨论】:

【参考方案1】:

类别实际上是您正在寻找的东西:

对于您的设置,您可以创建三个页面模板:

MyHome 类别 home MySection 类别 section MyArticle 类别 article

当然Page 1应该使用模板MyHomePage 1.1应该使用MySectionPage 1.1.1因此MyArticle

关于类别的文档:http://documentation.magnolia-cms.com/display/DOCS45/Template+definitions#Templatedefinitions-Categoriesandsubcategories

据我所知,可用性只能全局控制,而不是子树或级别(至少在 Magnolia CE 中)。

【讨论】:

感谢您的回复,但是在版块类别下,magnolia 会列出所有文章,而我只想要特定版块类型的某些文章。这可以通过重写 isAvailable() 方法来编写自定义 TemplateAvailability 类来实现。

以上是关于Magnolia 防止使用父页面模板创建子页面的主要内容,如果未能解决你的问题,请参考以下文章

获取 magnolia 中组件的父页面节点

MUI框架-08-窗口管理-创建子页面

在 Magnolia CMS 5 中将组件从一个自定义模板继承到另一个模板

如何在 EPiServer 8.0 中以编程方式创建子页面

Magnolia 页面模板未注册

Magnolia CMS 页面对话框为空