在 Sitecore 8 中,我是否可以获取页面语言版本的字段值



我想在页面的语言版本中获取字段值。例如,我在en-us中有一个名为"搜索占位符"的项目,其字段值为"选择..",在en-us页面上显示该值。但是当我在 en-gb 中创建搜索占位符并输入值"Select2..."它在 en-gb 页面上显示为空白。

string fieldName = "Search Placeholder Text";
Sitecore.Data.Items.Item someItem = Sitecore.Context.Database.GetItem("/sitecore/content/site/shared-content/Search Placeholder");
Sitecore.Data.Fields.Field someField = someItem.Fields[fieldName]; 
string searchPlace = someField.Value;

有没有办法检查搜索占位符是否有页面的语言版本?

首先,您可以将所选语言传递给GetItem方法:

Sitecore.Context.Database.GetItem(path, language)

然后,您可以使用以下命令检查项目是否具有该语言的任何版本:

someItem.Versions.Count > 0

如果项目的版本超过 0 个,并且字段为 null,则表示在将字段添加到模板后尚未发布此项目,或者字段项目本身尚未发布。

相关内容

最新更新