アイテムの代替言語へのアクセス
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
各アイテムは複数の言語を含むことができます。Sitecore.Data.Database.GetItem()メソッドでアイテムにアクセスする際に、Sitecore.Globalization.Languageクラスを使って言語を指定することができます。例えば、デフォルトのen言語で*/Sitecore/Content/Home*アイテムの現在のバージョンにアクセスするには:
Sitecore.Data.Database master = Sitecore.Configuration.Factory.GetDatabase("master");
Sitecore.Globalization.Language language = Sitecore.Globalization.Language.Parse("en");
Sitecore.Data.Items.Item home = master.GetItem("/sitecore/content/home",language);
!注言語を指定しない場合、Sitecoreはデフォルトでコンテキスト言語を使用します。Sitecoreのユーザーインターフェースコンポーネントはコンテンツ言語を指定します。
Sitecore.Data.Items.Item.Versions.Countプロパティを使って、言語のバージョンが存在するかどうかを判別できます。例えば、Masterデータベース内の*/Sitecore/Content/Home*項目の各言語の現在のバージョンにアクセスするには:
Sitecore.Data.Database master = Sitecore.Configuration.Factory.GetDatabase("master");
Sitecore.Data.Items.Item home = master.GetItem("/sitecore/content/home");
foreach (Sitecore.Globalization.Language language in home.Languages) { Sitecore.Data.Items.Item langItem = home.Database.GetItem(home.ID, language);
if (langItem.Versions.Count > 0) { // Process language item } }