Редактор страниц Sitecore Публикация элементов, связанных с контентом

У меня есть "Страница продукта", страница продукта соответствует элементу SiteCore "ProductPage". Сайт / Страницы /ProductPage.

У меня есть текстовая область на этой странице с редактором страниц, который загружает текст из "Текст примера продукта" из текста "Описание" элемента Sitecore из веб-базы данных. (Sitecore.../CommonText/ Пример продукта)

В моем файле ascx разметка довольно прямая,

<sc:FieldRenderer ID="FieldRenderer1" runat="server" />

Codebehind,

FieldRenderer1.Item = //"Product Example Text" Sitecore item
FieldRenderer1.FieldName = "Description";

Когда я открываю страницу в редакторе страниц (как системный администратор), она позволяет мне изменить "Текст примера продукта", а когда я сохраняю с помощью кнопки "Сохранить" в редакторе страниц, она сохраняется в основной базе данных. Элемент "Текст примера продукта" будет сохранен. Теперь, когда я пытаюсь опубликовать элемент, используя элемент "Опубликовать" на ленте редактора страниц, эти изменения не отражаются, причина в том, что элемент "Текст примера продукта" не публикуется.

Когда я сохраняю страницу, каким-то образом Sitecore понимает, что элемент "Текст примера продукта" необходимо сохранить. Но почему это не публикуется? Я делаю что-то не так... Как я могу решить эту проблему?

2 ответа

Решение

Сохраняя элемент в редакторе страниц, Sitecore сохраняет все средства визуализации полей, которые отображаются на странице, поэтому, если вы установите Item свойство FieldRenderer1 в "Product Example Test" Sitecore Item, Page Editor знать, какой элемент должен быть сохранен.

Проблема с публикацией заключается в том, что вы помещаете текущий элемент в очередь публикации, но этот элемент не имеет ссылки на "Product Example Test" Sitecore Item в любом из его свойств, потому что вы устанавливаете Item свойство рендера поля динамически в коде.

Можно добавить еще одну кнопку Page Editor рядом с Edit Related Item кнопку и создайте команду, которая будет Publish Related Item, Полное описание того, как добавить такую ​​команду, можно найти в ответе редактора страниц Sitecore - как расширить панель редактирования элементов редактора страниц.

Другой подход заключается в создании элемента содержимого "Тест примера продукта" в разделе "ProductPage" в качестве вложенного элемента. В опциях публикации вы можете использовать опцию публикации подпунктов, которая будет публиковать весь контент, который вы хотите. Но проблема в том, что если вы хотите, чтобы определенный контент был доступен в нескольких местах, это не сработает. Ответ Мараса - лучшее решение.

Другие вопросы по тегам