Могут ли клоны Sitecore стать более автоматическими

Я прочитал все, что мог, о клонировании, и это похоже на частичное решение для нашего клиента. Я прочитал http://www.sitecore.net/Community/Technical-Blogs/Getting-to-Know-Sitecore/Posts/2010/10/Cloning-What-Ifs.aspx, но комментаторы не закончили ответ.

Клоны Sitecore уведомляют об изменениях, что приятно и поддерживает идею рабочего процесса для всех элементов, но родительский клон не дает информации о том, что из него клонировано. Поэтому, когда на нашем (в основном) главном сайте вносятся изменения, поиск каждого клонированного элемента на 5 дочерних сайтах становится слишком утомительным и слишком быстрым.

Я считаю, что прокси-элементы когда-то были верным решением, но, учитывая, что они устарели, я не думаю, что это решение, которое мы хотим реализовать.

Помимо изменения нашего рабочего процесса и возни с клонами, есть ли встроенный или более простой способ поддерживать клоны?

Желаемое поведение:
Когда родитель клонов становится утвержденным в окончательном состоянии рабочего процесса => Примите также изменения в клонах.
Или
Менее желательно:
Дайте список всех дочерних клонов элемента в редакторе контента со ссылками для редактирования.


person al3xnull    schedule 07.06.2012    source источник
comment
проверьте эту ссылку gositecore.blogspot.com/2012/10 /   -  person Ahmed Okour    schedule 13.10.2012


Ответы (1)


Для желаемого поведения: вам нужно реализовать либо обработчик событий, либо обработчик конвейера, чтобы при утверждении элемента вы использовали базу данных ссылок, чтобы найти все его клоны и утвердить их программно. Я считаю, что это, безусловно, выполнимо с точки зрения кода.

Для вашего нежелательного поведения: вы можете использовать вкладку Навигация > раскрывающийся список Ссылки, чтобы найти клоны. Просто посмотрите на Referrers, у которых отображается поле _source, что означает, что они ссылаются на этот элемент через поле "_source", что означает, что они являются его клоном.

ОБНОВЛЕНИЕ

Чтобы изменить рабочий процесс элемента с помощью C#, см. Изменение состояния рабочего процесса для элемента.

person Mark Ursino    schedule 07.06.2012
comment
Ах. Так что примерно то, что я думал. Марк, а у тебя случайно нет ссылок на API клонов? Я немного поискал, но не смог понять, как принимать изменения на клонах. Это просто обновление полей на клоне от мастера перед утверждением? - person al3xnull; 08.06.2012
comment
Это не клон API, поскольку клон — это просто элемент с заполненным полем __source. Вы хотите изучить использование Sitecore API для программного применения рабочего процесса. Я отредактировал свой ответ выше со ссылкой. - person Mark Ursino; 08.06.2012
comment
Как заметил Марк, клоны — это просто предметы. Это статья, написанная Джоном Уэстом, в которой он подробно объясняет клоны, которые могут помочь объяснить больше о том, как работают клоны: sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/< /а> - person divamatrix; 08.06.2012
comment
@MarkUrsino Знаете ли вы, к какому конвейеру вам нужно привязаться, чтобы сделать это? - person Kyle; 17.10.2012
comment
Не похоже, что для этого есть хороший конвейер, но если вы подключитесь к событию item:saved, проверьте, обновлено ли состояние рабочего процесса элемента до конечного состояния, и если да, сделайте свое дело... - person Mark Ursino; 17.10.2012