是否有任何方法可以使页面模板继承自另一个页面模板而不将父项作为Kentico中的页面存在?

时间:2017-01-25 15:27:06

标签: kentico

我有一个通用页面模板,我希望重复使用很多页面,但每个页面也需要有自己的模板。例如,通用页面模板可能包含页面横幅和面包屑。

我目前正在这样做的方法是让每个页面都是通用模板的临时克隆,但是,当需要对通用模板本身进行更改时,这是不容易管理的,因为我需要对所有ad-hoc模板进行更改。

我可以通过创建一个在父级别使用通用模板的新页面来解决这个问题,然后将我的所有页面嵌套在它下面,充当主页面,但我觉得这样会不必要地污染内容树,因为我已经在根部有一个主模板。

有没有办法让页面模板从其他模板继承而不在内容树中实际创建物理母版页?

如果可以使特定的webpart容器不与所有使用相同模板的页面共享。

2 个答案:

答案 0 :(得分:1)

让页面模板继承自另一个模板会起作用,问题是如果您不在页面上使用该页面模板,则子页面模板将不会继承任何内容,从而失败的目的遗产。最好的办法是将这些项目添加到父页面模板中。假设内容树如此:


  • - 第1页 - 第2页

On" Page"在该模板中添加您的项目,并根据页面类型和/或级别隐藏或显示它们。那么对于" Page 3"和" Page 2"页面,为这些页面类型设置默认页面模板。然后用户将不必添加或选择模板,它将自动选择它们。然后,他们要做的就是在#34; Page 1"下添加内容。或" Page 2"页。然后,应根据显示或设置节点级别的子页面自动显示面包屑。

答案 1 :(得分:1)

ad-hoc并不像你理解的那样好。

您可以拥有2个主模板:1个将是您的根,第2个将在树中。第二个主服务器下的所有页面可以同时继承这两个模板: 例如,你有:

  • 包含网站菜单和页脚以及占位符的整个网站的根主文件
  • 您商店的商店主模板,其中包含商店菜单,横幅和占位符。

商店主服务器下的所有产品都将继承商店主服务器和根服务器主服务器。为此,你必须去 模板>特定祖先页面>并检查两个主人:root和store

共享内容的另一个选项是将占位符Web部件添加到您的页面并将其指向共享页面(您必须设置" Page以显示"属性)。我有几个完全不同的主人,但他们共享相同的页脚。所以我有两个指向这个共享页脚页面的持有者。