我在sitecore中成功创建站点A并已部署到生产环境,现在我想将另一个站点B添加到同一个站点内核实例。我意识到如何做到这一点,但我不知道如何将这两个网站的代码(布局,控件等)分开,以便不会真正依赖其他网站。而不是将两个站点结合在同一个站点中在Visual Studio中的一个项目,我想知道是否可以为站点B创建一个新项目,但是仍然重用站点A项目中的sitecore文件?我想要真正理解的是在sitecore中构建多站点解决方案的最佳实践。有任何想法吗? 注意:站点A和站点B在各个方面都完全不同,除了它们需要在同一个站点核心实例上运行。sitecore多站点设置
3
A
回答
3
,我建议你在文件系统上的每个站点的资产分成文件夹:
/Website/
/Website/sites/
/Website/sites/SiteA (<-- specific to SiteA)
/Website/sites/SiteB (<-- specific to SiteA)
/Website/sites/Common (<-- shared across any sites)
在Sitecore的,为您呈现部件做同样的。
- layouts
- SiteA
- SiteB
- Common
- Sublayouts
- SiteA
- SiteB
- Common
与同为模板:
Templates
User Defined
SiteA
SiteB
Common
分离出C#类库也因此他们是具体到每一个网站,并有hared代码的共同项目的任何网站(如工具代码,扩展方法,助手类等)。 Visual Studio解决方案:
- WebApp
- SiteALib (<- SiteA specific code)
- SiteBLib (<- SiteB specific code)
- CommonLib (<- reusable code for any site)
至于内容树的网站,他们也处于同一水平分离出来:
sitecore
content
SiteA (<-- root item for SiteA)
home (<-- start item for SiteA)
SiteB (<-- root item for SiteB)
home (<-- start item for SiteB)
0
我认为最简单的解决方案就是为每个站点使用布局,子布局等。
你可能只需要在布局文件夹2个文件夹:
布局/站点A 布局/ SiteB中
它们将包含每个站点的ASPX & ASCX文件。然后你会使用相同的Sitecore文件。如果需要的话,您也可以在解决方案中共享DLL或其他项目(如果您有一个基于Util的DLL或您在所有解决方案中使用的一些常规WebControls)。
这可能不是分离它们的最佳方式,但它很简单。
只要记住在section中有独立的s,并且在web.config的publish:end部分也有新的站点。
记住,你就可以从一个网站访问内容到另一个(即www.sitea.com/sitecore/content/Siteb.aspx),除非你有一些代码,处理该。
另一个常用技巧是使用外部URL来链接站点,并且为了避免Sitecore将它们更改为内部URL,请在另一个域(即edit.mysites.com)上设置editingsite。因为如果您在www.sitea.com/sitecore上进行编辑并在www.sitea.com上插入外部网址,Sitecore会“帮助您”并将其转换为内部网址,因为域名匹配。
相关问题
- 1. Sitecore的 - 在多站点设置
- 2. Sitecore多站点
- 3. Sitecore页面预览在多站点设置中询问无效站点
- 4. Sitecore页面预览与多站点设置不起作用
- 5. Sitecore多站点网站URL路由
- 6. Drupal多站点设置
- 7. Sitecore多语言设置
- 8. Sitecore - 多站点错误页面处理
- 9. Sitecore多站点Lucene搜索相关度
- 10. 锁定Sitecore中的多个站点
- 11. 如何在Sitecore的多站点环境中动态设置图像域的源?
- 12. Sitecore dtSearch配置与多个网站
- 13. 如何在Sitecore中设置多个语言网站?
- 14. Laravel多站点设置与子域名
- 15. 设置一个多语种wordpress站点
- 16. 与dd_googlesitemap TYPO3多站点地图设置
- 17. 利弊多站点的Drupal设置
- 18. sitecore站点给出错误
- 19. WordPress的多站点设置 - 新建站点仪表板错误
- 20. sitecore:多语言网站
- 21. 配置Sitecore的网站
- 22. 为drupal站点设置Xdebug
- 23. Sitecore 6.6 - 设置Lucene索引
- 24. Sitecore MVC路由设置
- 25. 错误在多站点Sitecore的外联网
- 26. Sitecore多站点 - 使用带有hostName属性的通配符
- 27. Sitecore Analytics重定向多站点解决方案
- 28. Sitecore LinkManager ExpandDynamicLinks无法解析站点URL
- 29. Sitecore - 如何生成站点地图xml
- 30. 自定义Sitecore微站点解析器
谢谢你,这是有道理的。但为了进一步分离项目,我正在考虑为站点B创建一个新项目,该站点将有sitecore dll引用到站点A项目,并为每个项目/站点维护两个独立的web.configs。网页。siteA的网站节点的配置将指向内容树中的siteA,siteB的web.config将指向内容树中的siteB。有了这个模型,我希望在一个使用相同sitecore实例的解决方案中实现两个不同的项目。我希望我能说清楚自己在说什么;)。 – xoail 2011-05-10 17:50:12
啊,这听起来像你想从Sitecore解决方案中删除你的网站的具体细节。看看这个:http://seankearney.com/post/Visual-Studio-Projects-and-Sitecore.aspx – 2011-05-10 18:47:43