Question

Je cherche un moyen de faire de la logique conditionnelle à des conditions associées à un poste.

Pour l'essentiel, j'ai créé ma propre taxonomie personnalisée pour les « groupes d'âge » et ont créé trois termes pour eux. Enfants, adolescents, adultes ... Dans la zone admin je veux vérifier les conditions applicables à un poste spécifique et sur le frontend du site dans mon modèle de page Je veux montrer une image spécifique si le terme a été associé au poste ou un différent si le terme n'a pas été associé.

Quelqu'un at-il une solution pour cela ... Je pensais que l'exemple de code suivant fonctionnerait, mais il ne fonctionne pas. . (BTW - ce que je fais ici est en train de changer l'image en fonction de css)

<li id="kids-<?php if ( is_term( 'Kids' , 'age_groups' ) ) {
   echo 'on';
} else {echo 'off';} ?>">Kids Programs</li>
Était-ce utile?

La solution

Salut @NetConstructor:

La première chose, en supposant votre logique a travaillé, vous pouvez utiliser l'opérateur ternaire pour simplifier votre exemple:

<li id="kids-<?php echo is_term('Kids','age_groups') 
   ? 'on' : 'off'; ?>">Kids Programs</li>

La question semble être que is_term() est utilisé pour vérifier si un terme existe, pas si elle est associée à un poste particulier. Je pense que ce que vous voulez vraiment est is_object_in_term() (ce qui suppose que vous êtes dans La boucle , à savoir que $post a une valeur appropriée ):

<li id="kids-<?php echo is_object_in_term($post->ID,'age_groups','Kids') 
   ? 'on' : 'off'; ?>">Kids Programs</li>

P.S. En supposant is_term() avait été la bonne fonction, il a été effectivement désapprouvée; term_exists() remplace is_term(); juste FYI.

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top