Modifier le nom de la taxonomie

WRInaute impliqué
Bonjour,
j'ai utilisé ce code pour créer une taxonomie depuis quelques années, elle fonctionne très bien sauf que je veux changer le mot "telephone" par "smartphone", mais lorsque je le change la taxonomie disparait sur l'administration wordpress et quand je restaure le mot "telephone" elle revient, voici le code :

Code:
register_taxonomy( 'smartphones', 'telephone', array( 'hierarchical' => true, 'label' => 'Categorie téléphone', 'query_var' => true, 'rewrite' => true ) );

Y a t il un moyen pour modifier le mot "telephone" même via la bdd ?
 
WRInaute accro
register_taxonomy( 'smartphones', 'telephone', indique que la taxonomie smartphones est enregistrée pour le custom post type telephone.

Comme vous n'avez rien défini dans vos arguments, le query_var est identique au nom de la catégorie. Si c'est la même chose pour le custom post type, c'est juste IMPOSSIBLE d'avoir deux objets différents avec la même query var et le même slug.

Sinon, chaque terme est enregistré en base de données avec son type. Il faut donc corriger la colonne taxonomy pour tous les termes concernés dans la table wp_term_taxonomy
 
WRInaute impliqué
register_taxonomy( 'smartphones', 'telephone', indique que la taxonomie smartphones est enregistrée pour le custom post type telephone.

Comme vous n'avez rien défini dans vos arguments, le query_var est identique au nom de la catégorie. Si c'est la même chose pour le custom post type, c'est juste IMPOSSIBLE d'avoir deux objets différents avec la même query var et le même slug.

Sinon, chaque terme est enregistré en base de données avec son type. Il faut donc corriger la colonne taxonomy pour tous les termes concernés dans la table wp_term_taxonomy
Merci beaucoup :)
 
Dernière édition:
WRInaute impliqué
@Marie-Aude je viens de trouver une solution, il s'agit d'ajouter le paramètres slug, mais ceci ne donne rien dans mon cas :
Code:
register_taxonomy( 'smartphones', 'telephone', array( 'hierarchical' => true, 'label' => 'Categorie téléphone', 'query_var' => true, 'rewrite' => array('slug' => 'smartphones'), ) );
Mes liens sont toujours -monsite.com/telephone/huawei/letel-7222
au lieu de : -monsite.com/smartphones/huawei/letel-7222
 
WRInaute accro
register_taxonomy( string $taxonomy, array|string $object_type, array|string $args = array() )

Le deuxième paramètre est celui du custom post type.

Donc il faut voir dans tes structures d'url. Manifestement tu as le cpt en premier

Et effectivement, quand je regarde le code source, je vois


class="telephone-template-default single single-telephone postid-7222" ce qui indique que tu es sur une page single de ton custom post type.

Auquel correspond le /telephone/ dans ton url. Donc il faut changer ta structure de permalien.

Et pour cela, il faudrait sans doute que ta taxonomie ait des archives, puisque /telephone/huawei/ renvoie une 404
 
Discussions similaires
Haut