Pregunta

Estoy buscando una manera de hacer algo de lógica condicional en condiciones asociadas con un poste.

En esencia creé mi propia taxonomía personalizada para los "grupos de edad" y han creado tres términos para ellos. Niños, adolescentes, adultos ... En el área de administración que quieren comprobar los términos que se aplican a un puesto específico y en la interfaz del sitio dentro de mi plantilla de página que quiero mostrar una imagen específica si el término se asocia con el puesto o uno diferente si el término no se asoció.

¿Alguien tiene una solución para esto ... pensé que el siguiente ejemplo de código funcionaría pero no es así. . (Por cierto - lo que estoy haciendo aquí está cambiando la imagen en función de css)

<li id="kids-<?php if ( is_term( 'Kids' , 'age_groups' ) ) {
   echo 'on';
} else {echo 'off';} ?>">Kids Programs</li>
¿Fue útil?

Solución

Hola @NetConstructor:

Lo primero, asumiendo tu lógica trabajó se puede utilizar el operador ternario para simplificar su ejemplo:

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

El problema parece ser que is_term() se utiliza para comprobar si existe un plazo, no si se asocia con un determinado puesto. Creo que lo que realmente quiere es is_object_in_term() (que se supone que está en href="http://codex.wordpress.org/The_Loop"> del bucle, es decir, que $post tiene un valor adecuado ):

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

P.S. Suponiendo is_term() había sido la función correcta, ha sido obsoleta ; sustituye term_exists() is_term(); Para su información.

Licenciado bajo: CC-BY-SA con atribución
scroll top