嵌套的sitecore组件显示不正确的渲染

时间:2016-05-10 21:32:35

标签: sitecore components sitecore8 sitecore-mvc

情景 Sitecore 8网站,我们有一个名为相关视频面板的组件,其中包含一个标题字段,以及一个占位符,允许编辑器使用该组件删除相关视频组件经验编辑。

相关视频面板相关视频都是通过GlassMapper填充的MVC控制器渲染。

问题 - 重建的步骤(全部通过体验编辑器)

  1. 在右侧导轨上删除相关视频面板。提示输入数据源时,选择创建新并将其命名为 Panel1
  2. 保存
  3. 在步骤1中创建的面板上删除相关视频组件
  4. 保存
  5. 单击红色X
  6. 从右侧导轨中移除整个组件
  7. 保存。
  8. 重复步骤1,再次创建一个全新的面板,将其命名为 Panel2
  9. 在第7步之后,我预计会有一个空白相关视频面板,但我们会在相关视频面板中添加相关视频它。

    到目前为止的疑难解答 我通过在每次将其放在页面上时添加标题来测试该面板是新的。标题每次都是新鲜的,所以我知道它显示了一个新的面板,即使渲染图显示不正确。

    我还验证了新标签面板上的演示文稿详细信息是空的,因此没有在项目的演示文稿详细信息上明确设置渲染,这会使它们显示出来。

    我确认它必须与特定的占位符相关,因为如果我在同一页面上的其他占位符上执行上述步骤,我会按预期获得空白面板。

    摘要 这似乎可能是一个Sitecore错误,但我没有进一步调查/讨论就犹豫不决。我的配置中可能还有其他东西弄乱了这个。我很难过,我不确定还有什么可以调查的。我也可以用Sitecore打开一张票。有没有人有这样的问题经验?

1 个答案:

答案 0 :(得分:1)

您所描述的问题很遗憾是Sitecore中的标准行为。删除定义占位符的控件时,不会删除放置在这些占位符中的组件,而是将其保留为孤立状态。您可以通过查看演示文稿详细信息来确认这一点,并且可以验证是否仍然列出了这些嵌套渲染。当您再次使用占位符添加Panel时,现有的渲染会重新出现,因为它们仍然绑定到该占位符键。

您必须编写一些自定义代码,挂钩到item:saving,然后检查任何孤立渲染的布局/最终布局字段,然后将其删除。