如何从基于类的wordpress插件访问方法?

时间:2010-09-30 10:23:46

标签: wordpress oop wordpress-plugin

我有一个插件,它注册一个帖子类型,分类和处理一些业务逻辑。

我继续前进,完成了基于OO的完美插件,现在它只在某些时候有效。

它的设置如下:

    class Fruit {
       public function __construct() {
           add_action('init', array(&$this, 'init'));       
       }

       public function init() { 
           $this->the_apple();
       }


       public function the_apple() {
           return print $apple = 'my apple';
       }
    }

    $fruit = new Fruit();

然后在taxonomy.php中,使用循环可以实现以下工作:

$fruit->the_apple();

但是一旦我将get_template_part与loop.php一起使用,这就不再适用了

$fruit->the_apple();

我收到以下通知:

Notice: Undefined variable the_apple();

1 个答案:

答案 0 :(得分:0)

我的解决方法是使用:

global $fruit;

现在它一直在运作,只是fyi关于全局变量他们得到了一个糟糕的代表。并且存在命名空间问题,以及将所有内容转储到全局和使用注册表中。

在制作中,我永远不会使用名称$ fruit,而是我会称之为

global $skylar_fruit;