可能过滤器启动得太晚了,无法正常工作,但这就是我所拥有的,但它不起作用。
class someClass()
{
public function __construct()
{
add_filter( 'body_class', array( 'someClass', 'body_class_filter') );
}
public function body_class_filter( $classes )
{
$classes[] = 'some-class';
return $classes;
}
}
我也试过
add_filter( 'body_class', array( $this, 'body_class_filter') );
或者
add_filter( 'body_class', array( &$this, 'body_class_filter') );
和
add_filter( 'body_class', array( __CLASS__, 'body_class_filter') );
但是那个过滤器似乎没有被触发。我什至在函数 body_class_filter() 中放入了 trigger_warning() 以查看代码是否正在处理,但似乎没有,因为 debug.log 中没有显示警告。
想法?