query_posts doesn’t order by title

It seems like stupid bug, but how can i order by title? It anyways orders by date! I’m using:

query_posts( array( 
    'post_type'      => 'page',
    'posts_per_page' => -1,
    'orderby'        => 'title',
    'order'          => 'ASC'
) );

I want to use this in function as SHORTCODE. What i’m trying to achieve is to create site map / index of all entries in alphabetic order.
Also i’m using newest WP.

2 Answers
2

Thanks to Chip Bennett who told me that i’m doing wrong by using query_posts inside content. So i used get_posts and i got what i wanted, thanks!

Here is sample of how can you do it, if you got the same problem as me:

function some_name(){

global $post;
$tmp_post = $post;
$args = array( 'post_type'=>'page', 'numberposts' => -1, 'orderby'=> 'title', 'order' => 'ASC' );
$myposts = get_posts( $args );

         if ( !empty($myposts) ) {
              foreach( $myposts as $post ) : setup_postdata($post);
              the_title();
              echo '<br>';             

              endforeach;

         } 

          $post = $tmp_post;

 }

Leave a Comment