Custom Post Type with Custom Taxonomy in Bootstrap 4 Accordion

I have a CPT with a Custom Taxonomy and a I need to show this content in the Bootstrap 4 Accordion.

So far, i have this:

?php 
$terms = get_terms( array(
            'taxonomy' = 'ano'
        ));

foreach($terms as $term) { ?    div id="accordion" role="tablist"      div class="card"
div class="card-header" role="tab" id="heading-?php the_ID(); ?"
  h5 class="mb-0"
    a data-toggle="collapse" href="#collapse-?php the_ID(); ?" aria-expanded="true" aria-controls="collapse-?php the_ID(); ?"
      ?php echo $term-name;  ?
    /a
  /h5
/div

div id="collapse-?php the_ID(); ?" class="collapse?php echo ($the_query-current_post == 0 ? ' in' : ''); ? show" role="tabpanel" aria-labelledby="heading-?php the_ID(); ?" data-parent="#accordion"
  div class="card-body"
    ?php   $event = new WP_Query('post_type=Paradasposts_per_page=-1');
            while ($event-have_posts()) : $event-the_post(); ?                           
            p?php the_title(); ?/p
            ?php endwhile ; wp_reset_query(); ?    


The taxonomy is being shown correctly in the header but the content is being the same, independent of the taxonomy

Topic twitter-bootstrap custom-post-types Wordpress

Category Web


Here the solution:

<?php
$post_type = 'paradas';
// Get all the taxonomies for this post type
$taxonomies = get_object_taxonomies( (object) array( 'post_type' => $post_type ) );
foreach( $taxonomies as $taxonomy ) :

    // Gets every "category" (term) in this taxonomy to get the respective posts
    $terms = get_terms( $taxonomy,
            array(
                'orderby'   => 'name',
                'order'     => 'ASC',
                'hide_empty'    => '1'
        )
    );

        foreach( $terms as $term ) : 
            // WP_Query arguments
        $args = array (
            'post_type'   => $post_type,
            'posts_per_page'  => '-1',
            'tax_query'       => array(
                        array(
                            /**
                 * For get a specific taxanomy use
                 *'taxonomy' => 'category',
                 */
                            'taxonomy' => $taxonomy,
                            'field'    => 'slug',
                            'terms'    => $term->slug,
                        )
                    )
        );
        // The Query
        $posts = new WP_Query( $args );

        // The Loop
        if( $posts->have_posts() ) : ?>
            <dl id="box-loop-list-<?php echo $term->slug ;?>">    <div id="accordion" role="tablist">    <div class="card">
<div class="card-header" role="tab" id="heading-<?php the_ID(); ?>">
  <h5 class="mb-0">
    <a data-toggle="collapse" href="#collapse-<?php the_ID(); ?>" aria-expanded="true" aria-controls="collapse-<?php the_ID(); ?>">
      <?php echo $term->name;  ?>
    </a>
  </h5>
</div>

<div id="collapse-<?php the_ID(); ?>" class="collapse<?php echo ($the_query->current_post == 0 ? ' in' : ''); ?>" role="tabpanel" aria-labelledby="heading-<?php the_ID(); ?>" data-parent="#accordion">
  <div class="card-body">

            <?php while( $posts->have_posts() ) : $posts->the_post(); ?>
                <p><?php the_title(); ?></p>
                <?php endwhile; ?>
        </div>
</div>

About

Geeks Mental is a community that publishes articles and tutorials about Web, Android, Data Science, new techniques and Linux security.