Есть ли способ получить элемент Sitecore, используя язык, отличный от текущего контекста? - PullRequest
6 голосов
/ 24 января 2011

У меня есть макет Sitecore, который генерирует vCard из элемента Sitecore, включая имя человека, служебный адрес и т. Д., И сохраняет его в виде файла на веб-сервере для последующего (быстрого) извлечения.Частью vCard является название организации (бизнеса).Мы являемся международной фирмой, что означает, что в разных регионах название нашей фирмы несколько отличается.

Например, на английском языке наше имя [Firm Name] LLP , а на шведскомэто [Фирма] Advokat AB .

Языковой контекст, используемый при создании vCards, является английским, но имя организации локализовано в Sitecore. Можно ли переключиться с английского на другой языковой контекст, чтобы получить локализованное имя организации, а затем переключиться обратно?

Альтернативный подход

В качестве альтернативы, я думаю, было бы просто жестко закодировать имя организации в коде, и на основе адреса офиса этого человека вывести правильное имя организации.Недостатком этого было бы то, что я не воспользовался бы возможностями локализации Sitecore.Кроме того, могут быть другие компоненты vCard, которые в конечном итоге будут локализованы - я не хочу жестко кодировать все.

1 Ответ

16 голосов
/ 25 января 2011

Это к какой-нибудь помощи?

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);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...