Перейти к основному содержимому

Планировщик задач

Общие сведения

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

  • публикация (Publish)
  • снятие с публикации (Unpublish)
  • удаление (Delete)
  • публикация определенной версии (Publish version) — публикует конкретную версию элемента (подробнее о версиях см. в разделе Версионирование)

Важно: если объект уже опубликован, то использование опцииPublish не опубликует последнюю неопубликованную версию — в таких случаях рекомендуется использовать Publish version.

Примечание: для работы планировщика необходимо настроить cron-задачи (cronjobs). Подробнее об этом — в разделе Настройки системы.

Использование

В качестве примера возьмем объекты. В административной панели Pimcore найдите иконку планировщика задач:

Scheduling - the icon in editmode

Нажмите кнопку Add,чтобы добавить новую задачу. При этом появится пустая строка с настраиваемыми параметрами: date, time and action (и он закончит обработку задач, изменения станут видны в системе). Параметр version используется только при выборе действия "Publish version". active флажок, указывающий, что задача еще не выполнена и активна.

Чтобы создать задачу, которая автоматически публикует неопубликованный объект, заполните соответствующие поля как на примерах ниже.

Scheduling - the new task

В таблице базы данных это будет выглядеть примерно так:

`schedule_tasks`  
# id, cid, ctype, date, action, version, active
'7', '76', 'object', '1474034700', 'publish', NULL, '1'

Когда вы запустите скрипт: ./bin/console pimcore:maintenance -j scheduledtasks скрипт завершит обработку заданий, вы сможете увидеть изменения.

В режиме редактирования объекта:

Scheduling - the processed task

В базе данных:

`schedule_tasks`  
# id, cid, ctype, date, action, version, active
'8', '76', 'object', '1474034700', 'publish', NULL, '0'


Вы можете предложить улучшение документации или задать вопрос в комментариях.
Если вам нужна полноценная консультация — вы можете заказать её на нашем сайте.