Элемент, который будет упакован в соответствии с полем даты при создании
Я создал элемент контента в / sitecore / Home / FootballFever /Articles и дал опцию вставки, чтобы мы могли добавлять только элементы шаблонов "Article". На данный момент эти элементы статьи могут быть упакованы в соответствии с датой создания поля.
Теперь у меня есть кнопки "Добавить статью" и "Вставить из шаблона" в блоке "Вставить" ленты "Домой". Когда я создаю элемент с помощью "Вставить из шаблона", он автоматически добавляется в соответствующий сегмент с указанием пути в качестве даты создания. например, если дата создания элемента - "21.07.2014", путь будет "/Articles/2014/7/21/ ".
Но когда я нажимаю "Добавить статью", элемент добавляется в / Articles, и мне приходится каждый раз синхронизировать, чтобы получить правильный путь. Как я могу вести себя так же, как в случае "Вставка из шаблона", но с путем, имеющим дату выпуска, которая является полем шаблона "Статья"?
2 ответа
Убедитесь, что в шаблоне Статьи поле Bucketable отмечено в стандартных значениях (для шаблона Статьи).
Если нет, то когда вы добавляете новый элемент в папку с ведрами, новый добавленный элемент сам по себе не является сборно-разборным, в отличие от остальных уже существующих элементов из той же папки с ведрами.
Я только что проверил концепцию своей среды песочницы и могу подтвердить, что в случае добавления нового элемента с проверяемой стандартными значениями Bucketable он сразу попадает в корзину и вам не нужно выполнять синхронизацию.
Надеюсь это поможет.
ОБНОВЛЕНИЕ: я написал сообщение в блоге специально, чтобы покрыть Ваш вопрос, с всесторонним описанием.
http://blog.martinmiles.net/post/understanding-buckets-adding-new-items-to-buckets-correctly
По умолчанию элементы будут структурированы в папки с пятью уровнями глубины в зависимости от даты и времени создания элемента. Есть пара других встроенных правил, которые вы можете использовать, например, используя часть Guid или часть имени. Здесь следует отметить, что это все, что доступно при создании предмета. Если вы хотите структурировать свои статьи на основе пользовательской "даты выпуска", вам нужно будет написать собственное правило, а также вам нужно будет реализовать OnItemSaved
обработчик события. Вот статья о том, как написать собственное правило.
Как правило, вам не нужно беспокоиться о том, как элементы структурированы в вашем ведре. Редакторы должны использовать вкладку поиска, чтобы найти нужные им элементы.
Сказав это, этот пост SO обсуждает, как структурировать ваши элементы корзины на основе настраиваемого поля. Здесь следует отметить, что это, как правило, глобальное изменение. Есть способы обойти это, что позволяет вам иметь разные стратегии для разных групп, но тогда вам придется проделать дополнительную работу, чтобы переопределить LinkProvider
и потенциально другие вещи.