Sitecore 8:隐藏项目中的部分或字段

时间:2015-12-04 07:24:48

标签: sitecore code-behind sitecore7 sitecore8 content-editor

我有一个使用子布局 sub1 的项目。使用此子布局创建的项目有一个字段" Switch Columns"我想删除或隐藏(或隐藏/删除部分" Columned Grid"如果可能的话)。请注意,我不希望模板的每个项目都隐藏该字段;只使用 sub1 的项目(因为模板正由不同的子布局使用)。

enter image description here

有没有办法通过sublayout的ascx文件中的代码执行此操作?

4 个答案:

答案 0 :(得分:3)

您可以使用额外的图层继承来解决。

创建2组模板字段: 模板字段最小集 带有附加字段的模板字段。

sub1从Template字段最小集继承 其他布局使用带有最小集合和添加字段的继承的模板。

也许这也是可用的: 对于内容编辑器中的隐藏。 你可以拒绝" Field Read"对于模板字段或节项目上的角色/用户。

请参阅https://community.sitecore.net/developers/f/8/t/2113

答案 1 :(得分:1)

您可以使用getContentEditorFields中的自定义处理器隐藏内容编辑器中的字段,请参阅此帖子:

http://ctor.io/hide-fields-in-the-sitecore-content-editor/

但正如其他答案所暗示的那样,我会过度思考你的做法。就个人而言,我要么使用两个单独的子布局(不同的列数,您可以在以后轻松交换它们而不会丢失它的datsource)或使用它作为渲染参数。

答案 2 :(得分:0)

不,那是不可能的。在内容编辑器中查看项目时,不会加载子布局。我建议你重新考虑你的架构。这种字段应该是一个渲染参数。或者,您可以创建一个单独的模板作为这些子布局的数据源。

答案 3 :(得分:-1)

可能是内容编辑器的自定义管道?如果您点击<renderContentEditor>管道,您可以检查项目的演示文稿,嗅出子布局,并注入一些JavaScript来隐藏面板。