web-dev-qa-db-fra.com

WP_Query order by date dans meta_value

j'ai un petit problème je pense.

c'est mon code pour mon category-releases.php:

<?php 
    $paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
    $args = array(
    'posts_per_page'    => '16',
    'paged'             => $paged,
    'meta_key'          => 'releaseDate');
    $posts = get_posts($args); 
    ?>
  <?php $wp_query = new WP_Query( $args ) ?>
  <?php while ( have_posts() ) : the_post(); ?>
  <?php get_template_part( 'content-releases', get_post_format() ); ?>
  <?php endwhile; ?>

dans la meta_key> releaseDate, j'ai différentes dates comme 13.02.2015, 02.05.2015, 12.05.2015 et ainsi de suite. Maintenant, je veux commander le message de la meta_key comme ceci: 30.05.2015, 28.05.2015, 10.04.2015 ...

j'ai essayé de définir l'ordre et utilisé orderby mais l'ordre est comme: 11.05.2015, 02.05.2015, 27.04.2015, 02.05.2015 ...

quelqu'un peut m'aider? Merci beaucoup!

2
dennisblack

changez vos arguments comme ci-dessous

$args = array(
    'post_type'  => 'your_post_type',
    'orderby'    => 'meta_value',
    'meta_query' => array(array('key' => 'releaseDate')),
    'order'      => 'ASC',
    'paged'      =>$paged,
);

Si vous obtenez les résultats en ordre inverse, changez 'order' => 'DESC', Vous obtiendrez le bon ordre.

3
Ajith