如何将CSS类添加到自定义Wordpress元框中?
问题描述:
我想添加CSS类到Wordpress元框。我希望这个过程是可重用的。这是我的想法是:如何将CSS类添加到自定义Wordpress元框中?
添加元框
add_meta_box('my_meta_box', 'My Meta Box', [$metaBoxesClass, 'display_meta_box'], 'my_post_type', 'normal', 'low', [
'slug' => 'my_meta_box',
'classes' => ['my-class']
]);
显示元框(在$metaBoxesClass
类)
public function display_meta_box($post = null, $o = []) {
// add filter with anonymous callback, default priority and 2 arguments
add_filter('postbox_classes_'.$post->post_type.'_'.$o["slug"], function($classes = [], $classesNew = []) {
foreach($classesNew as $class) {
array_push($classes, $class);
}
return $classes;
}, 10, 2);
// apply new filter with 2 arguments
apply_filters('postbox_classes_'.$post->post_type.'_'.$o["slug"], [], $o['classes']);
}
我似乎并没有得到任何错误,这样做,但my-class
类不适用于我的my_meta_box
元框。我可以不在display_meta_box
回拨内添加过滤器吗?
答
您需要使用和$o["args"]["classes"]
代替$o["slug"]
和。