Примечания и События
Общее
Примечания и события (Notes & Events) в первую очередь используются для логирования изменений или событий на элементах независимо от системы версионирования. Это включает изменения, внесённые маркетологами, редакторами, автоматическими импортёрами/синхронизациями и т.д. Вкратце — всё, что не связано напрямую с данными, но важно знать.
Сценарии использования
- Импортер (CLI-скрипт), который добавляет информацию к объектам о том, какие изменения были выполнены.
- Маркетологи/SEO-специалисты, добавляющие информацию о том, какие изменения были выполнены в документах, например "оптимизировано под ключевое слово xyz..."
Возможностей для использования примечаний и событий на самом деле почти бесконечное множество.
Создание Примечаний и Событий
С помощью API
use Pimcore\Model;
$object = Model\DataObject::getById(4);
$note = new Model\Element\Note();
$note->setElement($object);
$note->setDate(time());
$note->setType("erp_import");
$note->setTitle("changed availabilities to xyz");
$note->setUser(0);
// вы можете добавлять в заметки и события столько дополнительных данных, сколько захотите
$note->addData("myText", "text", "Some Text");
$note->addData("myObject", "object", Model\DataObject::getById(7));
$note->addData("myDocument", "document", Model\Document::getById(18));
$note->addData("myAsset", "asset", Model\Asset::getById(20));
$note->save();
И вот как выглядит запись:

Примечание: Поскольку заголовок примечания переводится (область admin), убедитесь, что вы не добавляете в заголовок переменный текст, который приведёт к нежелательным записям перевода. Для деталей используйте описание или данные.
Добавление Событий в интерфейсе Pimcore (backend)
Вы также можете добавить примечание непосредственно в режиме редактирования объектов, документов и ассетов.

Указание пользовательских типов для Примечаний и Событий
Через конфигурацию Pimcore выбираемые типы для примечаний и событий можно задать отдельно для каждого типа контента (asset, document, data object), см. пример конфигурации ниже:
# config/config.yaml or any other Symfony config file
pimcore_admin:
documents:
notes_events:
types:
- ""
- "content"
- "seo"
- "some other type"
assets:
notes_events:
types:
- ""
- "content"
- "licese renewal"
- "some other type"
objects:
notes_events:
types:
- ""
- "manual data change"
- "some other type"
Вы можете предложить улучшение документации или задать вопрос в комментариях.
Если вам нужна полноценная консультация — вы можете заказать её на нашем сайте.