PluginProbe
WPIDE – File Manager & Code Editor / 3.5.5
WPIDE – File Manager & Code Editor v3.5.5
3.5.8 3.5.7 2.0.14 2.0.15 2.0.16 2.0.2 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1 2.2 2.3 2.3.1 2.3.2 2.4.0 2.5 2.6 3.0 3.1 3.2 3.3 3.4 All 54 releases
← All changes | App/AppConfig.php +31 -8 3.13.5.5 View file →
@@ -5,24 +5,47 @@
5 5 use const WPIDE\Constants\DIR;
6 6
7 7 class AppConfig {
8 8
9 + /* @var $config Config */
9 10 protected static $config;
10 11
11 12 public static function load(): Config
12 13 {
13 - if(!empty(self::$config )) {
14 - return self::$config;
14 + if (empty(self::$config)) {
15 + // Only load config after WordPress init
16 + if (!did_action('init')) {
17 + add_action('init', fn() => self::$config = new Config(require DIR.'_configuration.php'));
18 + // Return empty config temporarily
19 + self::$config = new Config([]);
20 + } else {
21 + self::$config = new Config(require DIR.'_configuration.php');
22 + }
15 23 }
24 + return self::$config;
25 + }
16 26
17 - self::$config = new Config(require DIR.'_configuration.php');
27 + public static function get($key = null, $default = null)
28 + {
29 + return self::load()->get($key, $default);
30 + }
18 31
19 - return self::$config;
32 + public static function update($key , $value)
33 + {
34 + return self::load()->update($key, $value);
20 35 }
21 36
22 - public static function get($key, $default = null)
37 + public static function delete($key)
23 38 {
24 - self::load();
39 + self::load()->delete($key);
40 + }
25 41
26 - return self::$config->get($key, $default);
42 + public static function getField($key)
43 + {
44 + return self::load()->getField($key);
27 45 }
28 -}
46 +
47 + public static function fieldExists($key): bool
48 + {
49 + return self::load()->fieldExists($key);
50 + }
51 +}