Introduction
Les bases
Les plugins incontournables
Travaux pratiques
Installation et configuration du projetRéservé aux membres premiums
16 min
En tête et pied de pageRéservé aux membres premiums
42 min
La page actualitésRéservé aux membres premiums
36 min
La single actualitéRéservé aux membres premiums
56 min
Gestion des biensRéservé aux membres premiums
25 min
Single d'un bienRéservé aux membres premiums
26 min
Listing des biensRéservé aux membres premiums
26 min
Correction du menuRéservé aux membres premiums
10 min
Recherche des biensRéservé aux membres premiums
24 min
Page d'accueilRéservé aux membres premiums
55 min
Formulaire de contactRéservé aux membres premiums
19 min

Nous allons maintenant revenir sur la partie front et parler d'un objet essentiel dans WordPress : l'objet WP_Query. Cette class est utilisée en interne pour récupérer les articles à afficher dans la boucle. Mais vous pouvez aussi l'utiliser dans votre thème pour récupérer une liste d'article en fonction de critères précis.

On construira nos objets en passant en paramètre un tableau contenant les critères de notre recherche.

$query = new WP_Query([
  'post__not_in' => 1,
  'post_type' => 'post',
  'posts_per_page' => 3,
  'orderby' => 'rand',
  'tax_query' => [
    [
      'taxonomy' => 'sport',
      'terms' => [1, 10, 3]
    ]
  ],
  'meta_query' => [
    [
      'key' => 'is_sponso',
      'compare' => 'NOT EXISTS'
    ]
  ]
]);

Il sera ensuite possible de récupérer les enregistrements en utilisants les méthodes have_posts() et the_post().

while ($query->have_posts()) : $query->the_post();
?>
  <div class="col-sm-4">
    <?php get_template_part('parts/card', 'post'); ?>
  </div>
<?php endwhile; wp_reset_postdata(); ?>

On fera en revanche très attention à "nettoyer" les modifications opérées par the_post() gràce à la méthode wp_reset_postdata() afin d'éviter les conflits avec les autres boucles.