Wordpress Redux Framework - глобальный opt_name не доступен в плагине - PullRequest
0 голосов
/ 06 сентября 2018

Я создал тему и вставил фреймворк Redux с этим кодом

 if ( !class_exists( 'ReduxFramework' ) && file_exists( dirname( __FILE__ ) . '/ReduxFramework/ReduxCore/framework.php' ) ) {
        require_once( WPESTATE_PLUGIN_PATH . '/ReduxFramework/ReduxCore/framework.php' );
        require_once( WPESTATE_PLUGIN_PATH. '/ReduxFramework/loader.php' );
    }

    if ( !isset( $redux_demo ) && file_exists( dirname( __FILE__ ) . '/ReduxFramework/sample/sample-config.php' ) ) {
        require_once( WPESTATE_PLUGIN_PATH. '/ReduxFramework/admin-config.php' );

    }

В файлах темы я могу получить доступ к глобальному $ opt_name, и все работает отлично

После этого я создал функциональный плагин. В этом плагине я не могу получить доступ к $ opt_name, возможно, потому что избыточная структура еще не инициализирована.

Я прочитал здесь Redux Framework не работает при использовании в плагине , что я должен использовать Redux :: init ('opt_name') внутри моего плагина. Однако не ясно, как, поскольку класс Redux еще не существует.

Должен ли я использовать его в ловушке after_setup_theme? Какой будет лучший способ? Спасибо

1 Ответ

0 голосов
/ 19 января 2019

Простой ответ, отложите ваш доступ до тех пор, пока не запустится ловушка инициализации, ИЛИ ...

Redux::init('opt_name');

Это скажет Redux немедленно загрузить вашу панель. Тем не менее, я предупреждаю вас, если вы захотите добавить на свою панель где-нибудь, кроме вашего loader.php, вам не повезет. Как только панель загружается, она загружается. Вы не можете добавить больше. ;)

...