J'ai ce code
function add_custom_meta_box() {
add_meta_box(
'custom_meta_box', // $id
'Custom Meta Box', // $title
'show_custom_meta_box', // $callback
'page', // $page
'normal', // $context
'high'); // $priority
}
add_action('add_meta_boxes', 'add_custom_meta_box');
Je veux ajouter plus de type de message tel que page, post, custom_post_type dans ce code
'page', // $page
Comment dois-je réécrire mon code?
Définissez un tableau de types de publication et enregistrez la metabox pour chacun séparément:
function add_custom_meta_box() {
$post_types = array ( 'post', 'page', 'event' );
foreach( $post_types as $post_type )
{
add_meta_box(
'custom_meta_box', // $id
'Custom Meta Box', // $title
'show_custom_meta_box', // $callback
$post_type,
'normal', // $context
'high' // $priority
);
}
}
Si vous souhaitez ajouter tous types de publication, vous pouvez obtenir le tableau des types de publication avec:
$post_types = get_post_types( array('public' => true) );
Ou ajoutez un argument pour WP types de publications de base ou personnalisées:
// only WP core post types
$post_types = get_post_types( array('public' => true, '_builtin' => true) );
// only custom post types
$post_types = get_post_types( array('public' => true, '_builtin' => false) );
Utilisez-le comme ceci:
add_meta_box(
'custom_meta_box', // $id
'Custom Meta Box', // $title
'show_custom_meta_box', // $callback
$post_types,
'normal', // $context
'high' // $priority
);