2015-10-12 5 views
0

Как пометить тип пользовательского контента как истек/заархивированный после определенной даты/времени в ORchard CMS?Срок действия контента в Orchard CMS | Trigger Workflow и т. Д.

Требование :: Я создал собственный тип контента: SideBarLinks. Этот тип содержит, среди прочего, два поля, которые являются:

  • ExpirationDate
    Описательный текст: - дата, после которой деталь будет маркирован окончен:
  • ExpirationStatus
    Описательный текст: - Истек ли товар?

Пожалуйста, смотрите рисунок ниже:
enter image description here

Я действительно не знаю, как идти дальше в настоящее время. Как я могу вызвать некоторые функции/рабочий процесс/программу, которые будут проверять ExpirationDate и соответственно установить ExpirationStatus (Да/Нет)?

Я вижу, что подобная функция называется PublishLater вещь в Orchard CMS, где мы можем установить по расписанию Опубликовать Дата и время: enter image description here

Как делается эта вещь? есть ли Workflow, выполняемые автоматически в нужную дату ScheduledPublish? Будем признательны, если подробности о реализации здесь могут быть предоставлены. Я проверил встроенный модуль Orchard.PublishLater, но не имел большого смысла.

+0

Используйте модуль ArchiveLater, который является частью основных модулей садовника – devqon

+0

@devqon: Я боюсь, что модуль ArchiveLater НЕ является решением для моего требования. В основном на моем веб-сайте есть страница ARCHIVED, которая на самом деле перечисляет архивные/истекшие элементы в LIVE !!! Я действительно хочу, чтобы после желаемой даты (ExpirationDate), ExpirationStatus должен быть установлен «ДА» и больше ничего не требуется. Возможно ли это с помощью модуля архивации? –

+0

Не знаете, что вы имеете в виду, но с модулем ArchiveLater вы можете просто установить 'archive this when this date', и когда эта дата придет, orchard отменит публикацию элемента контента. Это должно привести к тому, что элемент будет невидимым в интерфейсе, или вы где-нибудь забыли запросить опубликованные contentitems вместо всех. – devqon

ответ

0

Там есть модуль, который делает именно то, что в Orchard Gallery https://gallery.orchardproject.net/List/Modules/Orchard.Module.Orchard.ArchiveLater

Если вы хотите его использовать свои собственные поля, вам придется изменить его.

+0

Спасибо за ответ. Я боюсь, что модуль ArchiveLater НЕ является решением для моего требования. В основном на моем веб-сайте есть страница ARCHIVED, которая на самом деле перечисляет архивные/истекшие элементы в LIVE !!! Я действительно хочу, чтобы после желаемой даты (ExpirationDate), ExpirationStatus должен быть установлен «ДА» и больше ничего не требуется. Возможно ли это с помощью модуля архивации? –

 Смежные вопросы

  • Нет связанных вопросов^_^