J'essaye d'ajouter des classes de CSS aux boîtes de méta de Wordpress. Je veux que le processus soit réutilisable. Voilà ce que je pensais:Comment puis-je ajouter des classes CSS à des boîtes de méta Wordpress personnalisées?
Ajouter Meta Box
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']
]);
Afficher Meta Box (en classe $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']);
}
Je ne semble pas avoir des erreurs faisant cela, mais le la classe my-class
n'est pas appliquée à ma boîte méta my_meta_box
. Puis-je ajouter un filtre dans le rappel display_meta_box
?