web-dev-qa-db-fra.com

WP_Query cinq derniers articles, simplement commandés par meta_value

Je ne peux pas croire que je pose cette question. C'est une méthode si simple, pourtant j'ai parcouru les WP pages et des dizaines de questions similaires sans succès, alors la voici ...

J'ai un WP_Query avec ce qui suit, qui obtient juste les 5 derniers messages:

$args = Array(
  'post_type' => 'post',
  'posts_per_page' => '5'
)

Tout ce que je voulais, c’était commander les 5 derniers posts en fonction du nombre meta_value_num des vues 'meta_key. Mais au lieu de cela, lorsque je publie quelque chose comme ce qui suit, il se place parmi les cinq meilleurs posts jamais vus.

$args = Array(
  'post_type' => 'post',
  'posts_per_page' => '5',
  'meta_key' => 'views',
  'orderby' => 'meta_value_num'
)

Qu'est-ce que je fais mal? J'ai l'impression que c'est frustrant à l'infini, probablement plus parce que je sais que la solution est presque certainement simple.

1
Cyprus106

Vous devez trier par ordre décroissant pour que les 5 derniers articles soient au top. Ajoutez simplement 'order' => 'DESC' à vos arguments.

$args = Array(
  'post_type' => 'post',
  'posts_per_page' => '5',
  'meta_key' => 'views',
  'orderby' => 'meta_value_num',
  'order' => 'DESC'
);
2
Hameedullah Khan