2016-09-29 75 views
0

下面是另一个脚本的依赖关系,并且在其当前形式下工作得很好。这只是验证API调用所需的一些信息。WordPress中的PHP类:使用get_option()指定值

<?php 
class getStuff { 
    public $subdomain = 'somedomain'; 
    public $key = '123-456-789'; 
} 
?> 

但是,这些值是静态的。我想使用get_option()使这些值可以从wp-admin轻易改变。所以我认为这是有道理的...

<?php 
class getStuff { 
    public $subdomain = get_option('option_subdomain'); 
    public $key = get_option('option_key'); 
} 
?> 

当然,这是行不通的。我已经阅读并尝试了很多关于构造函数的例子,他们似乎正在解决不同的问题。我不确定要查找什么...

顺便说一句,信息存储在options.php中的方式没有问题 - 它工作得很好。

回答

1

您应该能够设置在构造函数中的类属性这样

class getStuff { 
    public $subdomain; 
    public $key; 

    public function __construct() { 
     $this->subdomain = get_option('option_subdomain'); 
     $this->key = get_option('option_key'); 
    } 
} 
+0

非常感谢,它的工作原理!我应该提到这是我制作的插件,所以我还添加了include_once(“../../../ wp-load.php”);在顶部,脚本会识别WordPress的功能。 – friendofdog

+0

插件加载时get_option应该可用。你不应该包含wp-load.php。它最终将被wordpress包含在内。如果有没有准备好的WordPress功能,你应该使用WordPress的钩子。 https://developer.wordpress.org/reference/functions/add_action/#user-contributed-notes。这里是可用的所有wordpess钩子的完整列表https://codex.wordpress.org/Plugin_API/Action_Reference – user1087185

+0

好点。将用钩子取代。 – friendofdog