J'ai un type de message personnalisé (cpt_roundtable) et j'essaie d'ajouter une colonne à la page d'administration affichant le menu_order pour chaque entrée. Ceci est dans mon fichier functions.php.
function set_roundtable_columns($columns) {
return array(
'cb' => '<input type="checkbox" />',
'title' => __('Title'),
'taxonomy-sessions' => __('Session'),
'menu_order' => __('Order'),
'date' => __('Date'),
);
}
add_filter('manage_cpt_roundtable_posts_columns' , 'set_roundtable_columns');
Cela fonctionne parfaitement sauf que la colonne "Ordre" ne se remplit pas. Je suppose que le nom du terme est incorrect pour ce champ (?)
Dois-je écrire une fonction pour remplir cette colonne même s'il ne s'agit pas d'un champ personnalisé?
Oui, vous devez écrire du code pour le remplir. Ceci n'est pas testé mais devrait fonctionner.
add_filter('manage_edit-cpt_roundtable_columns', 'init_roundtable_custom_columns');
function init_roundtable_custom_columns($columns)
{
return array(
'cb' => '<input type="checkbox" />',
'title' => __('Title'),
'taxonomy-sessions' => __('Session'),
'menu_order' => __('Order'),
'date' => __('Date'),
);
}
add_action('manage_cpt_roundtable_posts_custom_column', 'manage_roundtable_custom_columns', 10, 2);
function manage_roundtable_custom_columns($column, $post_id)
{
$the_post = get_post($id);
switch ($column)
{
case 'menu_order' :
echo $the_post->menu_order;
break;
}
}