Плагины позволяют вам вмешиваться и изменять что-либо во время работы движка MODx. Все плагины привязаны к системным событиям MODx. Когда системное событие «срабатывает», все плагины, прикрепленные к этому событию, выполняются.
Во время работы MODX выполняются системные события.
Имена системных событий всегда начинаются с "ON" (например OnWebPagePrerender, OnDocFormSave, OnUserFormSave и т.д.). Список событий можно посмотреть здесь
Плагины назначаются (обычно при создании) для «прослушивания» одного или нескольких системных событий. Когда происходит системное событие, выполняется код любых плагинов, связанных с этим событием.
Этот простой плагин, когда он связан с событием OnWebPagePrerender, заменит все вхождения «crap» на «crap2».
$out = &$modx->resource->_output; // получить ссылку на выходные данные ресурса $out = str_replace('crap', 'crap2',$out); return;
Иногда плагин будет привязан к нескольким системным событиям, и в зависимости от того, какое событие сработало, будет выполняться тот код в плагине. В этом случае плагин должен идентифицировать имя системного события, примерно так:
/* Получаем переменную системного события */ $eventName = $modx->event->name; switch ($eventName) { case 'OnWebPagePrerender': // выполняем этот код break; case 'OnWebPageInit': // выполняем этот код break; } return;Перевод статьи Боба Рея