在ADD_ACTION()中使用参数运行函数

时间:2012-05-27 作者:Nimbuz

我创建了一个插件,它有一个接受两个参数的函数,如下所示:

process($tokens, $payloads);
。。。这样行吗?:

add_action ( \'publish_post\', process($tokens, $payloads) );
非常感谢!

1 个回复
最合适的回答,由SO网友:fuxia 整理而成

不,这不行。你没有测试过你的想法吗?

一个简单的解决方法是一个类:

class WPSE_53453_Action_Handler 
{
    public $tokens, $payloads;
    public function process() 
    {
        $tokens   = $this->tokens;
        $payloads = $this->payloads;
        // do something awesome
    }
}

$WPSE_53453           = new WPSE_53453_Action_Handler;
$WPSE_53453->tokens   = array ( \'foo\', \'bar\' );
$WPSE_53453->payloads = \'hello\';

add_action( \'publish_post\', array ( $WPSE_53453, \'process\' ) );

结束

相关推荐

Beta Versioning of Plugins

当我为一些bug编写修复程序时,我通常会增加版本并将其发送给bug查找程序,以查看我的修复程序是否有效。如果我有1.2.5 我想创建一个测试版,一旦我提交代码,它将变得多余,我应该使用1.2.5-beta 或1.2.6-beta? 我担心的是1.2.6 <;1.2.6-beta 因此,字符串比较可能有利于beta版,而bug查找程序不会收到发布稳定版本的通知。编辑:如果在不考虑发布类型的情况下对字符串进行绝对比较,则可以使用1.2.5-fix 然后1.2.6. 该问题也概述在http://en.wik