Wordpress - определение константы дает ошибку `` Предупреждение: использование неопределенной константы '' - PullRequest
0 голосов
/ 02 августа 2020

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

if(!defined('SIMleague_pluginName')){
    define('SIMleague_pluginName', 'SIM League');
}

Теперь я пытаюсь добавить больше констант:

if(!defined('SIMleague_active')){
    define('SIMleague_active', 'activated');
}

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

Warning: Use of undefined constant ....

Я что-то упускаю? Я пробовал добавить несколько констант. Даже скопировал первую и изменил имя и значение константы, чтобы не допустить опечаток. Но все равно не повезло ...

В качестве кода отладки я использую:

    <br/><p><?php echo SIMleague_active ?></p>
    <br/><p><?php echo SIMleague_pluginName ?></p>

Первый выдает ошибку, вторая строка работает нормально.

Может кто-нибудь объяснить это поведение?

ДОБАВЛЕНО (полное сообщение об ошибке):

Warning: Use of undefined constant SIMleague_active - assumed 'SIMleague_active' (this will throw an Error in a future version of PHP) in /volume1/web/esportstest/wp-content/plugins/SIMleague/classes/SIMleague_Admin_Settings.php on line 65 Call Stack: 0.0001 409912 1. {main}() /volume1/web/esportstest/wp-admin/admin.php:0 0.3584 9152128 2. do_action() /volume1/web/esportstest/wp-admin/admin.php:254 0.3585 9152504 3. WP_Hook->do_action() /volume1/web/esportstest/wp-includes/plugin.php:478 0.3585 9152504 4. WP_Hook->apply_filters() /volume1/web/esportstest/wp-includes/class-wp-hook.php:311 0.3585 9153632 5. SIMleague_Admin::my_plugin_options() /volume1/web/esportstest/wp-includes/class-wp-hook.php:287 0.3586 9153632 6. SIMleague_Admin::renderBasePage() /volume1/web/esportstest/wp-content/plugins/SIMleague/classes/SIMleague_Admin.php:27 0.3586 9153696 7. SIMleague_Admin_Settings::renderSettings() /volume1/web/esportstest/wp-content/plugins/SIMleague/classes/SIMleague_Admin.php:59 SIMleague_active

Обе константы определены друг за другом в SIMleague. php и используются в SIMleague_Admin_Settings (SIMleague_Admin_Settings расширяет класс SIMleague_Admin)

1 Ответ

0 голосов
/ 02 августа 2020

Только что нашел проблему. При загрузке файлов на тестовый сервер я загрузил все свои классы с новыми файлами, кроме базового класса SIMleague. php Этот файл находится на 1 уровень выше в иерархии папок и не был заменен обновленным файлом.

Как только я понял это, все пошло по плану ....

@ Альберто, спасибо за ответы!

...