繁体   English   中英

如何将CSS类添加到自定义Wordpress元框?

[英]How can I add CSS classes to custom Wordpress meta boxes?

我正在尝试将CS​​S类添加到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"]["slug"]$o["args"]["classes"]代替$o["slug"]$o["classes"]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM