Search code examples
phpwordpresstaxonomy

Get all posts from custom taxonomy in Wordpress


Is there a way to get all the posts from a taxonomy in Wordpress ?

In taxonomy.php, I have this code that gets the posts from the term related to the current term.

$current_query = $wp_query->query_vars;
query_posts( array( $current_query['taxonomy'] => $current_query['term'], 'showposts' => 10 ) );

I'd like to create a page with all the posts in the taxonomy, regardless of the term.

Is there a simple way to do this, or do I have to query the taxonomy for the terms, then loop trough them, etc.


Solution

  • $myterms = get_terms('taxonomy-name', 'orderby=none&hide_empty');    
    echo  $myterms[0]->name;
    

    With that you'd post the first item, yo can then create a foreach; loop:

    foreach ($myterms as $term) { ?>
        <li><a href="<?php echo $term->slug; ?>"><?php echo $term->name; ?></a></li> <?php
    } ?>
    

    That way you'd list them, if you want to post all of them, -my solution- create a normal wordpress loop inside the foreach one, but it has to have something like:

    foreach ($myterms as $term) :
    
    $args = array(
        'tax_query' => array(
            array(
                $term->slug
            )
        )
    );
    
    //  assigning variables to the loop
    global $wp_query;
    $wp_query = new WP_Query($args);
    
    // starting loop
    while ($wp_query->have_posts()) : $wp_query->the_post();
    
    the_title();
    blabla....
    
    endwhile;
    
    endforeach;
    

    I posted something very similar here.