我在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