Skip to content

Поведение расширения

Lev Zvyagintsev edited this page Jan 24, 2020 · 2 revisions

В этом разделе описаны подходы для того, чтобы расширение, будучи активным, выполняло какие-либо действия.

Расширение может выполнять какой-либо код при своей загрузке. Для этого служат специальные методы класса расширения:

  • Leyka_Extension::_initialize_active() - выполняется, если расширение активно,
  • Leyka_Extension::_initialize_inactive() - выполняется, если расширение неактивно,
  • Leyka_Extension::_initialize_always() - выполняется всегда (вне зависимости от активности расширения).

Примечание 1: Если нужно выполнять какой-либо код только для публичной зоны сайта (или, напротив, только в админ. зоне сайта), внутри приведённых методов можно использовать проверку: if( is_admin() ) { ... }

Кроме того, в конструкторе расширения выполняются следущие action hooks:

  • do_action('leyka_initialize_extension', $this, $this->_id);
  • do_action('leyka_initialize_extension-'.$this->_id, $this);

Примечание 2: ваше расширение может переопределять метод конструктора. Внутри конструктора можно проверить, активно ли расширение: if( leyka()->extension_is_active($this->_id) ) { ... }

Clone this wiki locally