SITECORE MANIA 開発者向け技術ブログ

コードサンプル

岡田

岡田

言語バージョンを指定してアイテムやアイテムの一覧を取得する方法

言語を指定してアイテムを取得するときは「Sitecore.Context.Database.GetItem(itemId, language)」などで取得する方法があると思いますが、
LanguageSwitcherを使用すれば、毎回指定しなくても範囲内であれば指定言語のまま処理をすることが可能になります。

string changeLang = "en";
using (new Sitecore.Globalization.LanguageSwitcher(changeLang))
{
	// ここに処理を書く
}

上記のようにusingで括った中で書いたものはすべて指定した言語でアイテムが取得されます。
例ではstringを入れていますが、LanguageSwitcherはstringとLanguageの両方の型に対応しています。

「Sitecore.Globalization.LanguageSwitcher」はSitecore.Context.Languageを変更してくれます。

他にも「Sitecore.Sites.SiteContextSwitcher」や「Sitecore.Security.Accounts.UserSwitcher」などがあり、上記と同様にContextで取得されるSiteやUserを切り替えることができます。

以上です。



※エントリーの内容・画像等は、公開時点での情報に基づきます。
※Sitecoreのバージョンによって実装されている機能が異なります。

この記事を読んだ人はこちらの記事も読んでます

Sitecore導入に関するご相談・資料ダウンロード

導入をご検討・ご依頼の方や、サービスについてご不明点がございましたらお気軽にお問い合わせください。

Sitecoreの運用問題を解決する

既にSitecoreを導入しているお客様向けサービス