如何在插件执行后将add_filter添加到the_content

时间:2013-05-20 14:34:09

标签: php wordpress

我有一个函数,它将一个html块添加到the_content()wordpress函数的顶部,但是,wordpress插件我也做了同样的事情,并且它将代码ABOVE插入我已经插入的html块。但我希望我的html块始终位于the_content输出的顶部。

有没有办法指定这个?

这是我的功能(插件以类似的方式执行,因此我假设它是按照加载的顺序完成的

function my_function($content){
    global $post;

    $content = $content . my_function($post) ;
    return $content;
}
add_filter( 'the_content', 'my_function', 9 );

该插件使用:

add_filter( 'the_content', array( &$this, 'the_content' ) );

我将我设置为优先级9,所以肯定会在插件10之前加载(默认)?

谢谢你们。

1 个答案:

答案 0 :(得分:1)

我不确定您是否仍需要这方面的帮助,但对于找到您问题的其他人可能会有帮助。

  

我将我的设置为优先级9,所以肯定会在之前加载   插件10(默认)?

这是正确的,但您希望过滤器在插件的过滤器之后生效。目前,您的过滤器会在内容部分的顶部插入一个HTML块。然后,插件过滤器将HTML块插入到先前插入的块上方的内容部分的顶部。因此,您应该将$priority过滤器设置为更高的值(如20),以便稍后出现并将HTML块插入其他过滤器插入的所有HTML块之上。