Reputation: 655
I am trying to display my custom posts by date order from my meta_key in wordpress.
It is a custom post for events happening and I need to display them in order of 'upcoming event'
My code so far is:
$today = date('d/m/y');
$args = array(
'post' => 'ID',
'post_type' => 'foodswaps',
'posts_per_page' => 3,
'meta_key' => '00.event-date',
'orderby' => 'meta_value_num',
'order' => 'ASC',
'meta_value_num' => $today,
'meta_compare' => '>='
);
The results do post in order but only of day. So they are appearing in this order of: 27/11/13
28/12/13
29/11/13
The order should post in: 27/11/13
29/11/13
28/12/13
Thanks in advance!
UPDATE: Explaining the Meta Key:
The meta_keys I have are:
Name of Field | Value
00.event-date | 28/11/13 ie d/m/y
01.app-key | 122334455669
02.user-key | xjsk284k38dj
etc.
They have 00, 01, 02, etc so they appear in alphanumeric order as there are a number of fields to display the the users needs to fill in. They list in a specific ored to make it more useable.
Upvotes: 3
Views: 766
Reputation: 10061
this is your solution
$args = array(
'showposts' => 5, // optional up to you
'post_type' => 'foodswaps',
'meta_key' => '00.event-date', // must use correctly, I am little confused why your meta key name like that start with 00, however.
'orderby' => 'meta_value',
'meta_query' => array(
array(
'key' => '00.event-date',
'value' => date("Y-m-d"),
'compare' => '>='
)
)
);
Fill the meta key value Y-m-d i.e. 2013-11-27
Upvotes: 3