23

I have read countless posts on ordering data by numeric value ( as opposed to string - it i have a numeric meta value and it gets ordered like this 1 11 12 2 233 etc as opposed to the way i want it

I am using WP_Query have tried using meta_query => 'NUMERIC' but i'm not sure if that's what it's actually supposed to do

eg

$args =  array(
    'meta_query' => array(
            array(
                  'type' => 'NUMERIC'
            )
    ),
    'orderby' => 'meta_value',
    'meta_key' => '_date',
    'post_type' => 'events',
    'posts_per_page' => 5,
    'order' => 'ASC'

);

1 Answer 1

36

you need to use

'orderby' => 'meta_value_num', 

also if you are ordering dates, the best advice is to put them in an easy to order way such as 2012-12-31

1
  • Thanks, that worked fine. Actually I have the day, month and year in separate meta values, which now presents the problem that i cant seemingly order by multiple meta values which was what I had planned. Commented Jan 12, 2012 at 2:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.