web-dev-qa-db-fra.com

déclaration conditionnelle pour la taxonomie personnalisée

Se battre pour savoir comment y parvenir, si cela est possible. L'équivalent de is_category, mais pour une taxonomie personnalisée que j'ai configurée. La catégorie de taxonomie si Taxonomy Name avec 2 taxonomies: Taxonomy One et Taxonomy Two. Mais ça:

<?php if ( has_term('taxonomy-one' ) ) {?>
    <div class="test" style="color: red"><?php the_field('field_name'); ?></div>
<?php } elseif ( has_term('taxonomy-two' ) ) {?>
    <div class="test" style="color: green"><?php the_field('field_name'); ?></div>
<?php } ?>

Il ne semble pas y avoir de documentation à ce sujet non plus, donc je ne suis pas du tout sûr que ce soit possible, j'espère cependant que toute suggestion serait grandement appréciée!

1
user1374796

Je suis presque sûr que vous ne devriez pas utiliser la négation dans vos conditions ... Si vous cochez ! is_tax..., ce sera le cas non seulement pour les autres pages de taxonomie, mais également pour les pages au singulier, etc.

Cela devrait donc ressembler à ceci:

<?php if ( is_tax('taxonomy-name','taxonomy-one' ) ) {?>
    <div class="test" style="color: red"><?php the_field('field_name'); ?></div>
<?php } elseif ( is_tax('taxonomy-name','taxonomy-two' ) ) {?>
    <div class="test" style="color: green"><?php the_field('field_name'); ?></div>
<?php } ?>

Et à propos du manque de documentation ... Je ne sais pas où avez-vous cherché, mais il existe une page de codex pour is_tax: http://codex.wordpress.org/Function_Reference/is_tax ;)

PS Si vous voulez vérifier si post est attribué à terme, vous devez utiliser has_term fonction.

3
Krzysiek Dróżdż