Class variables in shortcodes

时间:2014-12-07 作者:Kevin Marshall

不知道我做错了什么,但我有以下代码:

class the_shortcode {

    //Define Class Variables

    private $var;

    public function __construct()
    {
            add_shortcode( \'the_single\', array( $this, \'shortcode_2\' ));

    }


    function shortcode_1() {

        $this->var = \'World\';

    }

     function shortcode_2() {

         echo $this->var;

    }

}
$the_shortcode = new the_shortcode();
我早就料到了shortcode_1() 将定义$var 还有那个shortcode_2(), 当在shortcode操作中调用时,显示它会导致“World”,但实际上什么都不显示。

在帖子上,我有一个短代码:[the\\u single]

有什么想法吗?

谢谢

1 个回复
SO网友:Kevin Marshall

感谢@bueltge的回复:

在\\uu construct()函数中添加了额外的行:

public function __construct()
{
      $this->var = $this->shortcode_1(); //added
      add_shortcode( \'the_single\', array( $this, \'shortcode_2\' ));

}

结束

相关推荐

OOP and WordPress shortcode

我试图通过这种方式添加一个短代码class MyPlugin { function __construct() { $this->make_shortcode(); } function ShowMsg($cls, $lst4) { $data = shortcode_atts(array(\'phn\' => \'\', \'msg\' => \'\'), $atts);