Sortare WP Query după valoare meta (dată)
20 nov. 2014, 19:03:22
Vizualizări: 16.9K
Voturi: 1
Am următorul cod în care vreau să sortez după cheia meta "event_date" și să afișez doar postările după data de astăzi și în următoarele 3 săptămâni. Cumva nu se întâmplă nimic, chiar și atunci când simplific WP Query doar la tipul de postare și ordine, nu se afișează nimic, scriptul pur și simplu se oprește acolo unde este inserat codul.
<?php $events_args = array(
'meta_query' => array(
array(
'key' => 'event_date',
'value' => date('d-m-Y', strtotime("+3 weeks")),
'compare' => '<',
'type' => 'DATE'
)
),
'posts_per_page' => 3,
'post_type' => 'event',
'meta_key' => 'event_date',
'orderby' => 'meta_value',
'order' => 'ASC'
); ?>
<?php $upcoming_events = WP_Query($events_args); ?>
<?php if($upcoming_events->have_posts()): while($upcoming_events->have_posts()): $upcoming_events->the_post(); ?>
<a href="<?php the_permalink(); ?>"><article class="post_block">
<h2><?php the_title(); ?></h2>
<p class="date"><?php $date = new DateTime(get_field('event_date')); echo $date->format('d-m-Y'); ?><?php // echo get_the_date('d-m-Y'); ?></p>
<p class="text"><?php echo get_the_excerpt(); ?></p>
</article></a>
<?php endwhile; endif; wp_reset_postdata(); ?>
Are cineva idee de ce nu se afișează nimic? Dacă rulez un simplu query_posts ca:
query_posts('posts_per_page=3&post_type=event&meta_key=event_date&orderby=meta_value&order=DESC');
atunci vor apărea evenimentele, dar le va sorta după cele mai noi evenimente, iar eu trebuie să le sortez doar pe cele de la data de astăzi și în următoarele 3 săptămâni.

Dueify
125
Comentarii
Arată celelalte 1 comentarii
Toate răspunsurile la întrebare
1
Întrebări similare