我有一个“产品页面”,产品页面映射到“ProductPage”Sitecore 项目。网站/页面/产品页面。
我在该页面中有一个带有页面编辑器的文本区域,该区域从 Web 数据库中的“产品示例文本”Sitecore 项目的“描述”文本加载文本。 (Sitecore.../CommonText/产品示例文本)
在我的 ascx 文件中,标记非常简单,
<sc:FieldRenderer ID="FieldRenderer1" runat="server" />
代码隐藏,
FieldRenderer1.Item = //"Product Example Text" Sitecore item
FieldRenderer1.FieldName = "Description";
当我在页面编辑器中打开页面(作为系统管理员)时,它允许我更改“产品示例文本”,当我使用页面编辑器上的“保存”按钮保存时,它会保存到主数据库中。 “产品示例文本”项目被保存。
现在,当我尝试使用页面编辑器功能区中的“发布”项目发布项目时,这些更改不会得到反映,原因是“产品示例文本”项目未发布。
当我保存页面时,Sitecore 以某种方式理解必须保存“产品示例文本”项目。但为什么不发表呢?
我做错了什么吗...我该如何解决这个问题?
保存项目时页面编辑器,Sitecore 会保存页面上显示的所有字段渲染器,因此如果您设置Item
的财产FieldRenderer1
to "Product Example Test" Sitecore Item
, Page Editor
知道应该保存哪个项目。
发布的问题在于,您将当前项目放入发布队列中,但该项目没有指向"Product Example Test" Sitecore Item
在它的任何属性中,因为您正在设置Item
代码中动态显示字段渲染器的属性。
该选项是添加另一个按钮Page Editor
旁边Edit Related Item
按钮并创建一个命令Publish Related Item
。如何添加这样的命令的完整描述可以在答案中找到Sitecore页面编辑器-如何扩展页面编辑器项目编辑面板 https://stackoverflow.com/a/18351584/157833
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)