web-dev-qa-db-fra.com

La taxonomie hiérarchique personnalisée perd la hiérarchie d'interface lors de la sélection du parent et des enfants

J'ai une taxonomie hiérarchique personnalisée appelée "Catégories", mais une zone du site différente de la taxonomie par défaut "Catégories". Le problème que je rencontre est la sélection de termes enfants dans l'interface lors de la publication de contenu. Si l'utilisateur sélectionne des termes et des enfants, il se place en haut de la zone Catégories et perd l'association et la hiérarchie visuelle avec son parent. Voici une image montrant ce qui se passe:

Checked categories are moved to the top of the list, breaking the hierarchy

Je n'ai pas défini de paramètres inhabituels à ma connaissance, voici l'appel à register_taxonomy:

register_taxonomy( "workshop_categories", 'workshop',
    array(
        "label" => "Categories",
        "singular_label" => "Category",
        "rewrite" => true,
        "show_ui" => "true",
        'hierarchical' => true,
        'rewrite' => array('slug' => 'category')
    )
);

Toute entrée est appréciée!

1
Gavin

Cela semble être normal, cela arrive aussi pour les catégories. Le wp_terms_checklist() , qui crée la liste de contrôle, a un argument checked_ontop, activé par défaut. La metabox ne remplace pas cette valeur ; les catégories cochées ou les termes personnalisés apparaissent toujours en haut de la liste. Cela n'affecte pas leur hiérarchie réelle, mais seulement la façon dont elles y sont affichées. Il semble que les éléments restants de la hiérarchie, qui ont "perdu" leur parent, sont ajoutés au bas.

Je ne pense pas qu'il y ait un moyen raisonnable de remplacer cela, à moins que vous ne vouliez dupliquer le code de la boîte méta.

1
Jan Fabry

Cela peut être fait en utilisant ce crochet si quelqu'un cherche encore la solution.

function ya_disable_popular_ontop($args) {
   //If this is your required taxonomy then disable the popular on top.
    if($args['taxonomy'] == 'YOUR-TAXONOMY'){
        $args['checked_ontop'] = false;
    }
    return $args;
}
add_filter('wp_terms_checklist_args','ya_disable_popular_ontop');
2
Yamu

Un peu en retard, mais si quelqu'un trouve cela, il est résolu avec ce message ici: UI de taxonomie hiérarchique

1
Constant Meiring

Je ne sais pas si je peux poster des liens externes ici, mais je viens de résoudre ce problème pour les taxonomies personnalisées ou les catégories internes à WordPress.

0
Elliot