我目前正在Sitecore中开发一个网站,其中将有三个不同的区域具有相同的结构,直至2级页面,超出此级别结构可能会有所不同。其中一些页面在每个结构中具有相同的内容,而一些页面将是唯一的。内容是这样的:
home\section-1-home\sub-page-1 (identical content between the three sections)
\sub-page-2 (identical content between the three sections)
\sub-page-3 (different content for each section)
\section-2-home\sub-page-1
\sub-page-2
\sub-page-3
\section-3-home\sub-page-1
\sub-page-2
\sub-page-3
\sub-page-4 (extra page, unique to this section)
有没有办法在Sitecore中管理这种情况?
到目前为止,我有两个想法如何管理:
1)设置某种自定义发布操作,将指定的“主”版本页面中的内容合并到同一页面的从属版本。
2)创建一个主内容树(与home在同一级别,因此不能直接浏览),然后对Sitecore Context对象做一些聪明的事情,使其指向此主内容树中的项而不是当前项
修改: 只是为了澄清;我正在为此网站使用Sitecore 6.2,目前,不能选择更改为Sitecore的另一个版本: - (
答案 0 :(得分:4)
如果您正在使用Sitecore 6.4,那么您可能需要查看项目克隆。您可以克隆单个项目甚至是内容树的整个分支。克隆将从其父级获取其数据,但可以覆盖该项目的各个字段。
如果您使用的是早期版本,那么您应该阅读: http://sdn.sitecore.net/upload/sitecore6/sc62keywords/reusing_and_sharing_data_sc62_a4001.pdf
他们会在某个时候更新该文档以包含克隆......
答案 1 :(得分:1)
您可能会发现此主题很有用:
Retrieving Sitecore items Position A in the content tree and to the user in Position B
答案 2 :(得分:1)
如果我理解你的问题,那么你可以通过各种方式做到这一点,我只会提到一对
在树中创建自定义“共享内容”部分,然后在每个部分中创建“共享内容子布局/渲染器”,并将sublyout的源设置为共享内容
其他选项可以是将部分视为主要部分,然后挂钩到保存或发布piplines并创建/克隆您的项目。
答案 3 :(得分:0)
你也可以使用代理,它可以使用很多版本的Sitecore(5.3到至少6),它可以让你创建项目的“副本”。
你需要在web.config中启用它们,并且有一些缺点。
对于Sitecore 6,请参阅:
http://sdn.sitecore.net/upload/sitecore6/64/reusing_and_sharing_data-a4.pdf#search=%22proxies%22
或者搜索SDN上的代理。