Мой плагин WordPress вызывается дваждыPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Мой плагин WordPress вызывается дважды

Сообщение Anonymous »

Я создаю плагин WordPress и при отладке заметил, что он вызывается дважды при каждом запросе. Код моего плагина такой:

Код: Выделить всё

class Br1E_EngenhariaPlugin{
(...)
}

new Br1E_EngenhariaPlugin(); // A breakpoint here is called twice on each request
Отлаживая код, я вижу, что проблема в том, что файл wp-load.php вызывается дважды. Первый раз стек вызовов запускается на index.php:
Изображение

Если я нажму «Продолжить», он снова остановится на той же точке останова, на этот раз стек вызовов начался с wp-cron.php:
Изображение

Я пытался сделайте мой класс одноэлементным, используя статическую переменную, чтобы гарантировать, что класс загружается только один раз:

Код: Выделить всё

class Br1E_EngenhariaPlugin{
public static function LoadOnce() : Br1E_EngenhariaPlugin
{
if (self::$pluginInstance == null)
self::$pluginInstance = new Br1E_EngenhariaPlugin();

//register_activation_hook( __FILE__, array($br1Engenharia, 'install') );
return self::$pluginInstance;
}
(...)
}

Br1E_EngenhariaPlugin::LoadOnce();
Но это не сработало. Статическая переменная $pluginInstance имеет значение null при втором вызове, как будто это другой запрос.


Подробнее здесь: https://stackoverflow.com/questions/627 ... lled-twice
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»