Sitecore - Overriden演示文稿占位符在全站点更改?

时间:2011-03-31 01:11:12

标签: sitecore

如何在一个页面上显示由用户添加到占位符的渲染/子布局?

我在网站的页脚中有4个占位符。在这些占位符中,用户需要能够添加/删除模块(以子布局的形式),并且这些更改希望在站点范围内发生。当他们使用页面编辑器执行此操作时,它将覆盖由模板标准值设置的表示。目前,例如,用户从主页上删除了一个子布局,它对该项目起作用,但该网站下的所有其他页面都保留了标准值。

我怀疑我可能需要改变我的演示文稿布局的分配方式。好像我想在子布局'共享'中创建一个占位符,但我无法弄明白...

2 个答案:

答案 0 :(得分:1)

如果您希望在整个网站范围内分配此功能并且,那么您可能应该更改分配方式。一种方法是在树中创建一个全局部分,我们称之为全局设置(/sitecore/content/global settings)。在这里,有一个页脚模块的部分和4个点中每个点的下拉链接(即4个droplink字段,每个点一个)。然后为每个点分配一个模块项 - 然后每个模块都需要是树中的一个项。在您的页脚代码中,只需使用子布局渲染器即可显示相应的模块:<sc:sublayout path="path to ascx" runat="server" /> - 四个中的每一个当然都是四次。

不幸的是,这绕过了Sitecore项目的正常演示设置,并将演示内容放入模板的字段中。如果您可以提供有关每个模块的更多详细信息,那么我可能会提供更多帮助。例如,您的子布局是否使用了DataSource字段,还是硬编码以查看特定数据?

答案 1 :(得分:0)

您是否考虑过如何处理条件渲染规则?对于特定条件---字段值,祖先项,数据模板等, - 使用操作覆盖数据源。通过这种方式,所有子项都将继承DataSource项。