4

在深入研究我的解释之前,我将总结我的问题:

我如何为用户(编辑器)提供一种用户友好的可能性来为在标准值上预设的子布局选择数据源项?

我的情况如下:

我有一个页面模板,在标准值上有预定义的布局。假设布局包括:

  • 一个占位符“包装器”
  • 一个子布局“内容”

这个子布局是在我的页面模板上预定义的,但也可以使用页面编辑器放置在占位符中。它需要有一个定义 Title 和 Body 值的数据源项。

现在,如果用户使用页面编辑器将此子布局添加到占位符,他将获得一个很好的界面来选择或创建数据源项(参见屏幕截图)。

在此处输入图像描述

但是,如果子布局是在标准值上预定义的,它将在没有数据源的情况下添加(我无法在标准值中预先设置数据源,因为那时它仍然未知)。

到那时,似乎没有办法进入用于选择或创建数据源项的漂亮界面。

理想情况下,我希望能够向我的模板添加一个字段,该字段可以保存一个数据源项,用户可以使用漂亮的界面选择/创建该数据源项。我查看了数据源字段类型,这可能是另一种选择,但它仍然不是我想要的。

请记住,内容子布局只是一个示例。我知道在这种特定情况下,如果没有数据源,我可以通过始终将标题/正文字段添加到保存值的模板来解决它,但对于我的现实世界问题,这还不够。

我对页面编辑器(使用新的工作方式)没有很多经验,所以我想就这个主题获得一些建议。

4

1 回答 1

5

根据你在这里说的:

理想情况下,我希望能够向我的模板添加一个字段,该字段可以保存一个数据源项,用户可以使用漂亮的界面选择/创建该数据源项。我查看了数据源字段类型,这可能是另一种选择,但它仍然不是我想要的。

您似乎希望在 CMS shell 中有一个直观的数据源选择器界面,类似于基于页面编辑器的 UI。

快速回答:简单地说,在 Sitecore 中没有什么可以为您做这件事。

更长的答案:您仍然有一些选择,例如

定义一个全局“虚拟”数据源,并将其设置为模板标准值的 Presentation > Layout Details 中设置的数据源。所以每次你创建一个新页面时,它总是会指向那个虚拟值来显示一些东西。

从这里你可以做一些事情:

  1. 如果用户必须使用 shell UI 而不是页面编辑器,他们可以简单地为特定页面创建另一个数据源项,并使用布局详细信息中的现有本机界面更新该页面以指向它。
  2. 另一种选择是编写一个事件处理程序,例如item:created,当您创建项目时,为该特定页面自动创建相应的数据源项目(无论此自动创建的项目是子项目还是全局项目...... ) 然后以编程方式将其设置为数据源。Nick Wesselman 在这段视频中展示了一个类似的概念:http ://www.techphoria414.com/Blog/2012/May/Sitecore_Page_Editor_Unleashed
于 2012-10-11T17:59:50.157 回答