dans mon thème (construit à partir de zéro), je addad types de messages personnalisés et taxonomies personnalisées. À ma structure de modèle, j'ai ajouté:
J'ai lié les termes de taxonomie:
/*Custom Term Function*/
function custom_get_terms( $postID, $term ){
$terms_list = wp_get_post_terms($postID, $term);
$output = '';
$i = 0;
foreach( $terms_list as $term ){ $i++;
if( $i > 1 ){ $output .= ' — '; }
$output .= '<a href="' . get_term_link( $term ) . '">'. $term->name .'</a>';
}
return $output;
}
/*call in specific templates*/
<?php echo custom_get_terms( $post->ID, 'custom-cat' ); ?>
<?php echo custom_get_terms( $post->ID, 'custom-tag' ); ?>
Dans mon inspecteur, je vois des liens tels que:
<a href="http://localhost:8888/wordpress/custom-cat/term-cat/">term-cat</a>
Mais quand je clique sur le lien, on me présente le fichier archive.php. Comment cela se peut-il, la requête ne devrait-elle pas se replier sur category-customname.php? Au moins, la documentation le dit. Quelqu'un at-il une idée pourquoi cela se produit? Je vous remercie. théo
Les taxonomies personnalisées ont des modèles nommés taxonomy-quelque chose dans cette hiérarchie:
taxonomy-{taxonomy}-{term}.php
taxonomy-{taxonomy}.php
taxonomy.php
archive.php
index.php
Donc, oui, si vous n'avez pas taxonomy-custom-cat-term-cat.php
, taxonomy-custom-cat.php
ou taxonomy.php
, alors archive.php
sera utilisé.
category-something.php
ne sera utilisé que pour les catégories intégrées, si vous êtes sur une page affichant des messages d'une catégorie appelée "quelque chose".