J'ai créé une simple boucle. Et j'ai le tableau suivant pour la requête:
$live_tags = array(
'tag' => 'live',
'showposts' => 5,
'post_type' => 'post',
'post_status' => 'publish',
'orderby' => 'date',
'order' => 'DESC'
);
Là où il est écrit 'tag' => 'live'
, il me faut une logique qui demande:
if ('tag' == 'live' || 'category' == 'candy')
Mais je ne sais pas comment faire cela dans le tableau WP_Query.
Quelqu'un sait comment récupérer des messages à partir de balises ou de catégories?
Vous avez besoin d'un tax_query
.
$live_tags = array(
'posts_per_page' => 5, // showposts has been deprecated for a long time
'post_type' => 'post',
'post_status' => 'publish',
'tax_query' => array(
'relation' => 'OR',
array(
'taxonomy' => 'post_tag',
'field' => 'slug',
'terms' => 'live',
),
array(
'taxonomy' => 'category',
'field' => 'slug',
'terms' => 'candy',
),
),
'orderby' => 'date',
'order' => 'DESC'
);
$q = new WP_Query($live_tags);
var_dump($q->request);
Notez que les deux arguments {tax} (string)
et showposts
sont obsolètes depuis un certain temps. Je ne recommanderais pas de les utiliser.