我在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. 在網址中使用language-culture的Sitecore多站點設置
- 6. Sitecore頁面預覽與多站點設置不起作用
- 7. 在visual studio 2012中設置sitecore多站點
- 8. Sitecore多個站點實施
- 9. Sitecore多站點網站URL路由
- 10. CodeIgniter多站點設置
- 11. Drupal多站點設置
- 12. 如何在My Local Machine中的一個Sitecore實例中設置多個站點(多域站點)?
- 13. Sitecore多語言設置
- 14. 多站點Sitecore實例中的站點隔離特別適用於Sitecore
- 15. Sitecore - 多站點錯誤頁面處理
- 16. Sitecore多站點Lucene搜索相關度
- 17. 鎖定Sitecore中的多個站點
- 18. SIteCore - 多站點 - 顯示來自錯誤站點的頁面
- 19. 如何在Sitecore的多站點環境中動態設置圖像域的源?
- 20. Sitecore dtSearch配置與多個網站
- 21. 具有AD成員身份配置的Sitecore多站點
- 22. 如何在Sitecore中設置多個語言網站?
- 23. Laravel多站點設置與子域名
- 24. Django多站點:ValueError:SITE_ID尚未設置
- 25. 利弊多站點的Drupal設置
- 26. 多站點開發的項目設置
- 27. 與dd_googlesitemap TYPO3多站點地圖設置
- 28. 如何在WordPress中設置多站點?
- 29. 設置一個多語種wordpress站點
- 30. 設置cookie站點
謝謝你,這是有道理的。但爲了進一步分離項目,我正在考慮爲站點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