L'ordre des catégories sur le tableau de bord est alphabétique. Puis-je le changer en commande personnalisée?
Trouvé une réponse dans cette réponse .
add_filter( 'get_terms_args', 'wpse_53094_sort_get_terms_args', 10, 2 );
function wpse_53094_sort_get_terms_args( $args, $taxonomies )
{
global $pagenow;
if( !is_admin() || ('post.php' != $pagenow && 'post-new.php' != $pagenow) )
return $args;
$args['orderby'] = 'slug';
$args['order'] = 'DESC';
return $args;
}
Le order peut être ASC
ou DESC
, et le orderby peut être:
count
description
(ça devrait, mais ça n'a pas si bien fonctionné pour moi, des tests supplémentaires sont nécessaires)name
slug
(peut-on appeler ces Plinterests ?)
Les deux premiers sont très courts et peuvent être facilement intégrés à votre code.
Arbre de liste de catégories : celui-ci reconstruit la méta-catégorie, vous pouvez donc en modifier le code pour une mise en forme/une adaptation de la boîte - et voici une capture d'écran de ce qu'elle fait
Gecka Terms Ordering : crée une table auxiliaire dans la base de données (wp_termmeta
) pour gérer la commande. A glisser et déposer des capacités.
Utilisez le plugin Advanced Custom Fields (Ce plugin est pratique à bien des égards). Créez ensuite un champ de commande personnalisé (category_order) avec la règle 'Taxanomy_Term' égale à 'Catégories'.
Ensuite, dans votre thème functions.php (ou quelque chose de pertinent), utilisez:
$categories = get_categories( $args );
usort($categories, function($a, $b) {
return get_field("category_order", "category_".$a->term_id) - get_field("category_order", "category_".$b->term_id);
});
foreach ($categories as $category){
...
Où ordre_catégorie est le nom du champ créé avec ACF.
Ce billet inspiré par celui-ci ici .