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

Actions

Эта группа классов позволяет добавлять поля управления триггерами в требуемые места и генерировать js код на основе указанных настроек.

enum Type

Здесь перечислены все виды триггеров, их список можно в описании триггеров

Controls

Для каждого типа из enum Type определен соответствующий класс для добавления полей управления. Эти классы расширяют класс ControlsRegistry, так что достаточно только описать конфигурацию для требуемых полей, а зарегистрированы они будут автоматически

Handlers

Для каждого типа из enum Type определен соответствующий класс для генерации js кода из настроек. Эти классы работают на основе абстрактного класса Base.php:

abstract class Base {
abstract public function render( array $data ): string;

public function get_init_script( array $data ): string {
return '';
}
}

Они должны определить метод render и вернуть из него js код для обработки триггера. Метод get_init_script можно переопределить при необходимости для возвращения инициализирующего скрипта и добавления его в футер страницы с помощью класса AdditionalPageTriggers

Fabric

Фабрика создана для более удобного получения экземпляров классов Controls и Handlers. В методы ниже нужно передать тип триггера из enum Type и получить соответствующий класс. Фабрика задает прямое соответствие между типом в enum и классом в Controls и Handlers директориях

  • function get_control( Type $type, string $slug ): ControlsRegistry - возвращает соответствующий Control класс
  • function get_handler( Type $type ): Handlers\Base - возвращает соответствующий Handler класс