有没有人有在设置经验__Renderings
在Sitecore的领域不能共享? 我们正在建立一个多站点多语言解决方案,并需要(子)的布局要在不同的语言不同。 例如,英文网站可以有一个sublayout,同一商品的瑞典版本没有全部呈现组件并不总是有不同的语言相同的数据源。
一个稍微简单的解决办法,这将是上只需取消选中“共享” __Renderings
领域/sitecore/templates/System/Templates/Sections/Layout template
,但这有什么其他后果? 还是有更好的方式来处理这个要求?
需要换围绕基于类似的语言,原产国等视觉元素,当我自己的选择是使用Sitecore的个性化规则编辑交换数据源,并改变以这种方式呈现。 它不涉及改变Sitecore的默认行为,并允许您进军内置Sitecore的功能。
如果你的不同“sublayouts”实际上只是对数据源进行各种个性化规则被拉入,你可以用OMS / DMS配置所有这一切,靠的是Sitecore的引擎来呈现您需要的组件给出的当前状态。 对于性能,最新版本的DMS的打算可能是最好的(我相信6.5更新5现在的推荐版本)。
修改这样Sitecore的默认行为通常不是一个好主意。 这不是透明的其他人可能与系统在今后的工作中,它可能会导致意想不到的结果。
国际海事组织,这是更好地使开关(子)布局内部,它加载基于当前语言不同的文件。
至于后果。 如您所愿时,你的_Renderings场非共享它将工作。 您将能够为每个语言版本设置不同的表现的细节。 其结果是,你现在必须将其设置为每种语言版本......所以这将是不容易管理。
我会改用Sitecore的的设备。 对于每一种语言,你可以定义一个网站和每一个网站都可以有自己的设备。 这将工作外的开箱,如果你有一个域名FORR每种语言(www.site.com,www.site.de,www.site.fr等...)
如果你有所有语言的一个网站(一个主机名),你可以用httpRequestBegin流水线处理器切换装置。
这篇文章, http://briancaos.wordpress.com/2012/04/12/identifying-mobile-devices-in-sitecore/ ,介绍如何识别移动设备。 不难重写逻辑来切换根据语言的装置。
当你为每种语言定义不同的设备,您只需将渲染符合语言的设备上。 而你仍然有备用设备的所有那些所有的渲染都是一样的页面的可能性。
修改Sitecore的默认行为可能会为现在的工作,但使用和扩展Sitecore的平台是向前迈出的更好的方法。
我们确实做到了这一点,并且在大多数情况下有副作用少。 事实上,这是你会得到__Renderings改变工作流程的唯一途径。 我们与它相结合的部分语言回退 ,这样的语言可以继承英语的价值。 不过要小心,因为如果一个项目被克隆,它总是从克隆第一拉它的默认值,而不是标准值/回退。