1

我被告知要inline editingSitecore网站做。

它适用于文章页面等简单页面。

<sc:text ID="sct1" ruat="server" ... />

但如果页面更复杂,我相信现在是不可能的。

示例页面如..

About Us将有 3 个不同的单选按钮。

根据选择的按钮,将显示相应的内容。该内容实际上是 的子内容About Us

如果我愿意inline editing,我必须检查它是否是editing mode

如果是这样,我可以显示所有 3 套内容。

用户可以对其进行编辑。但是当他保存时,只保存了主页。子页面未保存。

我们有替代解决方案吗?

4

1 回答 1

3

您的断言是不正确的,即在保存页面时,仅保存正在呈现的项目。如果您使用字段渲染器从任何项目输出字段(如sc:text在幕后所做的那样),Sitecore 将跟踪该项目已被编辑,并保存所做的更改。

您可以填充ItemorDatasource属性sc:text以编辑另一个项目的字段。

Item数据绑定对象时的示例语法:

<sc:Text runat="server" ID="uxNameText" Field="Name" Item="<%#Container.DataItem%>" />

或者Datasource可以用来绑定一个item path(不推荐)或者ID(稍微好一点):

<sc:Link Field="Link" DataSource="/sitecore/content/home" runat="server" />

您也可以在代码隐藏中填充Item或填充。Datasource

作为替代方案,使用诸如自定义项生成器之类的框架来创建一个 .NET 类,该类将允许您以支持内联编辑的方式轻松地从任何项输出字段值。

参考:

http://blog.velir.com/index.php/2010/10/19/custom-item-generator/

http://www.techphoria414.com/Blog?tag=custom+item+generator

于 2013-01-21T17:10:59.203 回答