В моем проекте у меня есть метаданные публикации и страницы, которые используются в представлении. Например, метаданные моей страницы в представлении выглядят примерно так:

@model DD4T.ContentModel.IPage
....
@if (Model.MetadataFields.ContainsKey("browserTitle")) {
    <title>@Model.MetadataFields["browserTitle"].Value</title>
}

Есть ли соответствующий способ доступа к метаданным публикации страницы?

Я вижу, что для модели IPage доступен Publication.Id, но я не уверен, как использовать его для получения метаданных публикации?

Благодарность

0
user3491169 3 Апр 2014 в 00:29
Не могли бы вы задать этот вопрос на tridion.stackexchange.com, пожалуйста? Этот форум полностью посвящен SDL Tridion.
 – 
Quirijn
3 Апр 2014 в 12:23

1 ответ

Лучший ответ

Метаданные публикации недоступны в объектной модели DD4T. Обходной путь - создать класс шаблона DD4T в .NET, который считывает метаданные из публикации и сохраняет их на странице. В веб-приложении вы можете получить информацию из метаданных страницы.

В DD4T есть шаблонный класс под названием «Добавить унаследованные метаданные на страницу», который делает то же самое для метаданных структурной группы (не метаданных публикации). Вы можете проверить источник и использовать его как отправную точку.

2
Quirijn 3 Апр 2014 в 12:22