J'ai un type d'article personnalisé (item
) avec plusieurs taxonomies personnalisées (item_category_A
, item_category_B
, etc.). J'aimerais récupérer les termes de taxonomie personnalisés de la item
actuelle de item_category_A
, les rendre également cliquables. Mon code récupère les termes corrects, mais utilise ensuite get_term_link()
pour récupérer une URL ressemblant à sitename.com/item_category_B/category_A_term_slug
. Qu'est-ce que je fais mal? Mon code ressemble à ceci:
function get_item_category_A(){
$item_cat_A = get_the_terms(get_the_ID,'item_category_A');
echo '<a href="' . esc_url(get_term_link($item_cat_A[0]->slug,$item_cat_A[0]->taxonomy)).'">'.esc_html($item_cat_A[0]->name).'</a>';
}
Néanmoins, lorsque je lance la fonction, elle renvoie l’url qui pointe vers le terme correct dans la taxonomie incorrecte (sitename.com/item_category_B/category_A_term_slug
).
WordPress permet la personnalisation du comportement de réécriture d'URL par défaut (/ slug/term) avec un tableau d'arguments rewrite
passé à la fonction register_taxonomy()
.
En définissant des valeurs pour les clés slug
ou hierarchical
dans ce tableau, la structure d'URL par défaut peut être modifiée en fonction de vos besoins. Il peut également être modifié de manière à ce que des résultats inattendus soient renvoyés.
Lors de la création de plusieurs taxonomies, il est facile de copier et coller les étiquettes et les tableaux de paramètres pour une taxe et de négliger la nécessité de mettre à jour certaines des informations pour des utilisations ultérieures.
Référence du WP Codex: https://codex.wordpress.org/Function_Reference/register_taxonomy#Arguments
Explication de la taxonomie hiérarchique via Milo: Comment activer les liens permanents hiérarchiques pour les taxonomies hiérarchiques