Soporte » WordPress Avanzado » tag.php no funciona

  • ¡Hola!
    Escribo para consultar y pedir ayuda sobre cómo hacer para que me funcione bien tag.php, ya que mientras hacía un proyecto (estoy aprendiendo), no filtraba bien los posts (son custom post type).
    Explico el problema:
    Cada vez que hago clic en un tag (ejemplo: chocolates), no me muestra solo las tiendas que incluyen el tag chocolates, sino todas.
    No puedo estar colocando ‘tag’ => ‘chocolate, helados, pastas’ e incluyendo todo ahí porque la idea es que este proyecto sea administrado por otra persona y que pueda agregar todas las categorías de alimento (en tags) que estime conveniente.

    Dejo el loop que tengo en tag.php

    <?php
    						$args = array(
    						'post_type' => 'store',
    						'posts_per_page' => -1,
    						'order' => 'ASC',
    						'orderby' => 'title'
    						);
    
    						$query = new WP_Query($args);
    
    						if($query->have_posts()){
    							while($query->have_posts()):$query->the_post(); { ?>
    
    								<!-- Content -->
                     <article class="col-lg-4 col-md-6 col-12 px-5 py-4">
    (Omitiré todo el código interno)
                     </article>
    
    							<?php } endwhile;?>
    
    					<?php } else { ?>
    						<!-- Content -->
    				 <h3>No se encontraron tiendas en esta categoría.</h3>
    					<?php } wp_reset_postdata(); ?>
    

    La solución que encontré para el momento fue crear un archivo tag-$slug.php para cada categoría de alimento que se creaba, pero no es lo más óptimo.
    ¿Hay algo que puedo colocar en el loop par arreglar esto? me imagino algo que detecte automáticamente, tipo:
    'tag' => '$mi_tag'

    Pero aún me confundo con loops muy complejos, yo al menos aún no soy capaz de armarlos por mi mismo. ¿Existe algún tutorial que me pueda ayudar con esto o alguien sabe lo que debo poner en el loop para que esto funcione?

    Otro detalle: esto no me pasaba si usaba tag.php con el post type de las entradas, ya que en ese caso solo hacía falta un loop simple (<?php if (have_posts()) { ?>) y sí me mostraba los posts que contenían ese tag elegido, tuvieran otros 2 más o no, el filtro era efectivo.

    En el link pueden ver en qué consiste la idea. (Tengo una nube de tags y dice categorías, pero eso es por categoría de alimento, no de taxonomy category).

    ¡Gracias de antemano!

    • Este debate fue modificado hace 1 mes, 2 semanas por pablolienlaf.

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 1 respuesta (de un total de 1)
Viendo 1 respuesta (de un total de 1)
  • Debes estar registrado para responder a este debate.