2011-01-24 24 views
6

我有一个Sitecore布局,可以从Sitecore项目生成vCard,包括个人姓名,公司地址等,并将其保存为Web服务器上的文件,以便以后(快速)检索。部分vCard是组织(商业)名称。我们是一家国际公司,这意味着在不同的地区我们的公司名称略有不同。有没有办法使用与当前上下文不同的语言检索Sitecore项目?

例如,在英国我们的名字是[公司名称] LLP,而在瑞典是[公司名称] ADVOKAT AB

生成vCard时使用的语言环境是英语,但组织名称已在Sitecore中本地化。 是否可以从英语切换到另一种语言环境来获取本地化组织名称,然后切换回去?

另类视角

我琢磨是只硬编码在代码中的组织名称的替代方案,并根据个人的办公地址输出正确的组织名称。这样做的缺点是我不会利用Sitecore的本地化功能。另外,vCard的其他组件可能最终会被本地化 - 我不想对所有内容进行硬编码。

回答

16

这是否有帮助?

Language theLanguage = Sitecore.Globalization.Language.Parse("sv-SE"); 
Item theOriginalItem = Sitecore.Context.Database.GetItem("/sitecore/content/home/theitem"); 
Item theLanguageSpecificItem = Sitecore.Context.Database.GetItem(theOriginalItem.ID, theLanguage); 
相关问题