C# 多语言Sitecore环境中的Sitecore单语言发布
是否有任何方法可以在sitecore中发布某些特定语言的项目,这些语言是我们从与项目关联的API获得的C# 多语言Sitecore环境中的Sitecore单语言发布,c#,asp.net-mvc,sitecore,sitecore6,sitecore-mvc,C#,Asp.net Mvc,Sitecore,Sitecore6,Sitecore Mvc,是否有任何方法可以在sitecore中发布某些特定语言的项目,这些语言是我们从与项目关联的API获得的 Language[] languages = new Language[] { LanguageManager.GetLanguage("en") }; .... ... Sitecore.Publishing.PublishManager.PublishSmart(master, targetDbs, languages); 我在Sitecore Env中有三种语言,但我希望其中一种语言仅
Language[] languages = new Language[] { LanguageManager.GetLanguage("en") };
....
...
Sitecore.Publishing.PublishManager.PublishSmart(master, targetDbs, languages);
我在Sitecore Env中有三种语言,但我希望其中一种语言仅用于“en”语言,另一种语言仅用于“en ca”,另一种语言仅用于“fr ca”。您需要使用
PublishItem
方法,并按照以下步骤进行操作:
//Get your Item list here
var itemList = GetItemList();
//Loop in the Item list to get the languages
//Publish the item based on the languages
foreach (var item in itemList)
{
var languageVersions = item.Languages;
Sitecore.Publishing.PublishManager.PublishItem(item, targetDb, languageVersions, true, false);
}
谢谢对不同的项目单独使用PublishItem。@安东,谢谢你的回复,我的意思是,如果您需要以一种语言发布某些项目,而以其他语言发布其他项目,并且您知道哪些项目应以何种语言发布,那么您可以使用Sitecore.Publishing.PublishManager.PublishItem而不是PublishSmartThank@Hishaam,我能够做到这一点,并且它起到了作用,但我用一种语言发表的文章也用另一种语言展示。diff是指当我试图用非出版语言打开产品时,它会将我重定向到其主页,并使用出版语言,效果很好。产品应仅显示在发布的语言页面上。目标数据库中是否也有其他版本?是,目标数据库中存在所有版本。在内容编辑器中,我可以看到发布项目的正确版本。但在网站上,它以所有语言打开。如果项目的所有版本都已发布到目标数据库,它将在live Site上打开问题是因为环境本身存在安装问题。代码很好。谢谢