web-dev-qa-db-fra.com

Comment ajouter une classe à la méta-boîte

Lors de l’ajout d’un métabox, c’est-à-dire:

add_meta_box( 
    'metabox_id',
    'Metabox Title',
    'my_metabox_callback',
    'page',
    'normal',
    'low', 
    array( 'foo' => $var1, 'bar' => $var2)
);

comment puis-je y ajouter une class pour le style css? J'aimerais éviter d'avoir à appeler chaque id dans la règle de style pour les métaboxes contenant des éléments ayant le même style.

5
Ana Ban

Ajoutez simplement la classe au balisage que vous générez dans le rappel.

1

Disons que vous voulez un cours pour la boîte à extraits. Ensuite, vous pouvez faire:

add_filter('postbox_classes_post_postexcerpt','add_metabox_classes');

function add_metabox_classes($classes) {
    array_Push($classes,'another_class');
    return $classes;
}

Avec cette méthode, vous devez ajouter un filtre pour chaque boîte. Vous devez également ajouter une classe. Le filtre est appliqué dans la fonction postbox_classes dans wp-admin/includes/post.php

En général, le crochet est postbox_classes_{$page}_{$id}, où $page est l'identifiant de la page (par exemple, "post" pour les publications et (vraisemblablement) "type de publication personnalisé" pour les publications de type "type de publication personnalisé"). $id fait référence à l'ID du metabox, attribué automatiquement aux métabox 'par défaut' ou spécifié dans add_meta_box.

DOCS: https://developer.wordpress.org/reference/hooks/postbox_classes_page_id/

12
offroff