且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

是否检查是否存在当前语言的项目?

更新时间:2023-11-28 08:40:28

若要查看当前项目是否有版本,您可以执行以下操作:Sitecore.Context.Item.Versions.Count > 0

[更新备注]

我不认为这是确定项目是否具有语言版本的最有效方法,但这会奏效:

bool hasVersion = HasLanguageVersion(Sitecore.Context.Item, "en");

private bool HasLanguageVersion(Sitecore.Data.Items.Item item, string languageName)
{
    var language = item.Languages.FirstOrDefault(l => l.Name == languageName);
    if (language != null)
    {
        var languageSpecificItem = global::Sitecore.Context.Database.GetItem(item.ID, language);
        if (languageSpecificItem != null && languageSpecificItem.Versions.Count > 0)
        {
            return true;
        }
    }
    return false;
}