2
我們正在構建兩個網站,這兩個網站都會有一個新聞部分。是否可以將Umbraco設置爲將內容發佈到多個網站
某些新聞項目對每個網站都是獨一無二的,有些將在兩個網站上發佈。
是否可以設置Umbraco以便兩個站點都由相同的Umbraco CMS控制,並且能夠將某些新聞項目標記爲在其中一個站點或兩個站點上被剔除?
我們正在構建兩個網站,這兩個網站都會有一個新聞部分。是否可以將Umbraco設置爲將內容發佈到多個網站
某些新聞項目對每個網站都是獨一無二的,有些將在兩個網站上發佈。
是否可以設置Umbraco以便兩個站點都由相同的Umbraco CMS控制,並且能夠將某些新聞項目標記爲在其中一個站點或兩個站點上被剔除?
當然是!你有很多選擇。我建議您簡單地在您的新聞文檔類型上添加一個複選框,將其稱爲「在兩個站點上發佈」。然後,當您在任一網站上顯示新聞時,只需將您的正常新聞與其他網站的新聞結合起來即可。
你需要遍歷樹,然後到另一個網站,然後獲取新聞。考慮到你有一個「News - NewsItem」結構,這裏是顯示新聞的代碼。
var siteRoot = Model.Content.AncestorOrSelf("Site");
var normalNews = Model.Content.Descendants("NewsItem");
var otherSite = site.Children[1];
var otherSiteNews = otherSite .Descendants("NewsItem").Where(x => x.AsDynamic().publishOnBothSites);
var combinedNews = normalNews.AddRange(otherSiteNews);
然後繼續使用組合新聞!
(語法可能typoed,我在家裏)
希望這有助於!
還有其他方法可以做到這一點,在這裏我理所當然地認爲您正在使用Razor視圖。請告訴我,如果不是這樣。 –
我從OP得到的印象是,它們是獨立的Umbraco實例,而不是單個安裝中包含的多個網站。 – ProNotion
謝謝Sébastien - 是的,我們可能會使用Razor視圖。 ProNotion - 不,我們正在計劃在一個Umbraco實例中的多個站點。 –