为预设组件选择数据源项

Ruu*_*ier 4 sitecore sitecore6

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

如何为用户(编辑)提供用户友好的可能性,以便为标准值上预设的子布局选择数据源项?

我的情况如下:

我有一个页面模板,标准值上有预定义的布局.让我们说布局包括:

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

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

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

在此输入图像描述

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

那时似乎没有办法找到用于选择或创建数据源项的好界面.

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

请记住,内容子布局只是一个例子.我明白,在那个特定的情况下,我可以通过总是向模板中添加一个标题/正文字段来解决它,如果没有数据源,则保存值,但对于我的现实世界问题是不够的.

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

Mar*_*ino 5

根据你在这里说的话:

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

您似乎希望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