Системные события
Последнее обновление Aug 15th, 2026 | История страницы | Улучшить эту страницу | Сообщить о проблеме
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$194 per month—let's make that $500!
Learn moreЧто такое системные события?¶
Системные события - это события в MODX, которые зарегистрированы в Плагины. Они «запускаются» по всему коду MODX, что позволяет плагинам взаимодействовать с кодом MODX и добавлять пользовательские функции без исправления основного кода.
Модель системного события¶
Таблица системных событий находится в {table_prefix}_system_eventnames, и имеет следующие поля:
- id - Уникальный ID.
- name - Название события. Это то, как они вызываются в коде, через метод modX.invokeEvent.
- service - Тип системного события.
- groupname - Используется для пользовательских интерфейсов, прежде всего для фильтрации, группировки и сортировки событий. Не используется явно в модели modx.
Service Types¶
Поле 'service' в системном событии является числом; числа указывают на различные типы системных событий. Они следующие:
- 1 - Parser Service Events
- 2 - Manager Access Events
- 3 - Web Access Service Events
- 4 - Cache Service Events
- 5 - Template Service Events
- 6 - User Defined Events
Тип 3 не запускается в контексте 'mgr', а тип 2 - не запускается ни в каком контексте, кроме 'mgr'.
Доступные события¶
События ниже сгруппированы по groupname, использованному в списке событий менеджера. Полный список всех зарегистрированных событий — в transport.core.events.php.
Categories¶
Chunks¶
- OnBeforeChunkFormDelete
- OnBeforeChunkFormSave
- OnChunkBeforeRemove
- OnChunkBeforeSave
- OnChunkFormDelete
- OnChunkFormPrerender
- OnChunkFormRender
- OnChunkFormSave
- OnChunkRemove
- OnChunkSave
Contexts¶
- OnContextBeforeRemove
- OnContextBeforeSave
- OnContextFormPrerender
- OnContextFormRender
- OnContextInit
- OnContextRemove
- OnContextSave
- OnContextUpdate
Internationalization¶
Media Sources¶
- OnMediaSourceBeforeFormDelete
- OnMediaSourceBeforeFormSave
- OnMediaSourceDuplicate
- OnMediaSourceFormDelete
- OnMediaSourceFormSave
- OnMediaSourceGetProperties
Package Manager¶
Plugin Events¶
Plugins¶
- OnBeforePluginFormDelete
- OnBeforePluginFormSave
- OnPluginBeforeRemove
- OnPluginBeforeSave
- OnPluginFormDelete
- OnPluginFormPrerender
- OnPluginFormRender
- OnPluginFormSave
- OnPluginRemove
- OnPluginSave
Property Sets¶
Resources¶
- OnBeforeDocFormDelete
- OnBeforeDocFormSave
- OnBeforeEmptyTrash
- OnDocFormDelete
- OnDocFormPrerender
- OnDocFormRender
- OnDocFormSave
- OnDocPublished
- OnDocUnPublished
- OnEmptyTrash
- OnResourceAddToResourceGroup
- OnResourceAutoPublish
- OnResourceBeforeSort
- OnResourceCacheUpdate
- OnResourceDelete
- OnResourceDuplicate
- OnResourceRemoveFromResourceGroup
- OnResourceSort
- OnResourceTVFormPrerender
- OnResourceTVFormRender
- OnResourceToolbarLoad
- OnResourceUndelete
RichText Editor¶
Security¶
- OnBeforeManagerLogin
- OnBeforeManagerLogout
- OnBeforeResourceGroupRemove
- OnBeforeWebLogin
- OnBeforeWebLogout
- OnManagerAuthentication
- OnManagerLogin
- OnManagerLoginFormPrerender
- OnManagerLoginFormRender
- OnManagerLogout
- OnPageUnauthorized
- OnResourceGroupBeforeRemove
- OnResourceGroupBeforeSave
- OnResourceGroupRemove
- OnResourceGroupSave
- OnWebAuthentication
- OnWebLogin
- OnWebLogout
Settings¶
Snippets¶
- OnBeforeSnipFormDelete
- OnBeforeSnipFormSave
- OnSnipFormDelete
- OnSnipFormPrerender
- OnSnipFormRender
- OnSnipFormSave
- OnSnippetBeforeRemove
- OnSnippetBeforeSave
- OnSnippetRemove
- OnSnippetSave
System¶
- OnBeforeCacheUpdate
- OnBeforeManagerPageInit
- OnBeforeRegisterClientScripts
- OnBeforeSaveWebPageCache
- OnCacheUpdate
- OnElementNotFound
- OnFileCreateFormPrerender
- OnFileEditFormPrerender
- OnFileManagerBeforeUpload
- OnFileManagerDirCreate
- OnFileManagerDirRemove
- OnFileManagerDirRename
- OnFileManagerFileCreate
- OnFileManagerFileRemove
- OnFileManagerFileRename
- OnFileManagerFileUpdate
- OnFileManagerMoveObject
- OnFileManagerUpload
- OnHandleRequest
- OnLoadWebDocument
- OnLoadWebPageCache
- OnMODXInit
- OnManagerPageAfterRender
- OnManagerPageBeforeRender
- OnManagerPageInit
- OnPageNotFound
- OnParseDocument
- OnSiteRefresh
- OnWebPageComplete
- OnWebPageInit
- OnWebPagePrerender
Template Variables¶
- OnBeforeTVFormDelete
- OnBeforeTVFormSave
- OnTVFormDelete
- OnTVFormPrerender
- OnTVFormRender
- OnTVFormSave
- OnTVInputPropertiesList
- OnTVInputRenderList
- OnTVOutputRenderList
- OnTVOutputRenderPropertiesList
- OnTemplateVarBeforeRemove
- OnTemplateVarBeforeSave
- OnTemplateVarRemove
- OnTemplateVarSave
Templates¶
- OnBeforeTempFormDelete
- OnBeforeTempFormSave
- OnTempFormDelete
- OnTempFormPrerender
- OnTempFormRender
- OnTempFormSave
- OnTemplateBeforeRemove
- OnTemplateBeforeSave
- OnTemplateRemove
- OnTemplateSave
User Groups¶
- OnUserAddToGroup
- OnUserBeforeAddToGroup
- OnUserBeforeRemoveFromGroup
- OnUserGroupBeforeFormRemove
- OnUserGroupBeforeFormSave
- OnUserGroupBeforeRemove
- OnUserGroupBeforeSave
- OnUserGroupFormRemove
- OnUserGroupFormSave
- OnUserGroupRemove
- OnUserGroupSave
- OnUserRemoveFromGroup
User Profiles¶
Users¶
- OnBeforeUserActivate
- OnBeforeUserDeactivate
- OnBeforeUserDuplicate
- OnBeforeUserFormDelete
- OnBeforeUserFormSave
- OnUserActivate
- OnUserBeforeRemove
- OnUserBeforeSave
- OnUserChangePassword
- OnUserDeactivate
- OnUserDuplicate
- OnUserFormDelete
- OnUserFormPrerender
- OnUserFormRender
- OnUserFormSave
- OnUserNotFound
- OnUserRemove
- OnUserSave
Кастомные события¶
Для пользовательских событий пока нет графического интерфейса — создавайте их через API. У событий есть следующие атрибуты:
| Атрибут | Описание |
|---|---|
| name | Уникальное имя события. |
| service | Свободная группировка событий по области. Службы 1, 2, 4, 5 и 6 загружаются внутри менеджера, а 1, 3, 4, 5 и 6 — вне его (см. getEventMap()). |
| groupname | Группирует события визуально в менеджере MODX, где они отображаются на вкладке плагина. |
Создание события через API MODX:
$Event = $modx->newObject('modEvent');
$Event->set('name', 'OnMyCustomEvent');
$Event->set('service',1);
$Event->set('groupname', 'Custom');
Вызов события по имени:
$modx->invokeEvent('OnMyCustomEvent', $options);
Затем зарегистрируйте плагин на это событие — он получит параметры, переданные в invokeEvent().
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$194 per month—let's make that $500!
Learn more










