Bienvenue dans une autre partie de notre série "Mastering WP_Query". Comment allons-nous jusqu'à présent? J'espère que vous appréciez ces tutoriels autant que nous aimons les écrire..
Dans ce tutoriel, vous allez en apprendre davantage sur les propriétés et les méthodes du WP_Query
classe. Mais d’abord, je pense qu’il est approprié de parler de ce que sont les "propriétés" et les "méthodes" dans une classe.
On y va?
En PHP, il existe un moyen d'écrire du code dans un nettoyeur manière: programmation orientée objet, ou POO. Avec la programmation orientée objet, nous utilisons des "classes" comme plans. J’ai pris le terme de l’un des classique messages de Code Tuts +, "PHP orienté objet pour les débutants" de Jason Lengstorf:
Une classe, par exemple, est comme un plan pour une maison. Il définit la forme de la maison sur papier, avec des relations entre les différentes parties de la maison clairement définies et planifiées, même si la maison n'existe pas.
(Et rappelez-vous que WP_Query
est une classe essentielle du noyau WordPress.)
Lorsque vous comprenez la notion de classes PHP, "propriétés" et "méthodes" deviennent extrêmement faciles à comprendre car les mots ne sont que des synonymes de "variables" et "fonctions". Oui, Propriétés sont des variables d'une classe PHP et les méthodes sont des fonctions d'une classe PHP.
Maintenant, nous avons couvert ce qu'ils sont, apprenons à connaître chacune de ces propriétés et méthodes.
Attention: Il ne serait pas sage de changer les propriétés directement. Comme le dit le Codex, vous devriez interagir avec eux en utilisant les méthodes de WP_Query
.
Commençons par les propriétés, ou les variables, du WP_Query
classe.
$ requête
Cette propriété stocke la requête transmise au $ wp_query
objet.
$ query_vars
Cette propriété stocke un tableau associatif des variables (et leurs valeurs) de $ requête
.
$ queried_object
Cette propriété stocke l’objet actuellement interrogé, comme le $ post
objet si c'est une requête de poste ou la $ auteur
objet si c'est une requête de l'auteur.
$ queried_object_id
Cette propriété stocke l'ID de l'objet interrogé.
$ posts
Cette propriété stocke les articles renvoyés par la requête..
$ post_count
Cette propriété stocke le nombre de publications pour la requête en cours..
$ found_posts
Cette propriété enregistre le nombre de messages sans le LIMITE
clause de la requête SQL.
$ max_num_pages
Cette propriété stocke le nombre de pages-il est calculé en divisant $ found_posts
par $ posts_per_page
.
$ current_post
Cette propriété stocke le numéro d'index de l'élément en cours dans la boucle. Par exemple, c'est -1
si la boucle vient de commencer et est incrémentée de la next_post ()
méthode.
$ post
Cette propriété stocke, ainsi, le post actuel.
$ is_ conditionnel
Les propriétés suivantes sont stockées en tant que booléens, donnant des informations sur le statut de la publication en cours:
$ is_single
: Vérifie s’il s’agit d’un message unique de tout type de message (à l’exception des types de message "pièce jointe" et "page") ou non.$ is_page
: Vérifie s'il s'agit d'une page ou non.$ is_archive
: Vérifie s'il s'agit d'une page d'archive ou non.$ is_preview
: Vérifie s'il s'agit d'un aperçu de publication ou non.$ is_date
: Vérifie s'il s'agit ou non d'une page d'archive basée sur la date.$ is_year
: Vérifie s'il s'agit d'une page d'archive basée sur un an ou non.$ is_month
: Vérifie s'il s'agit d'une page d'archive mensuelle ou non.$ is_time
: Vérifie s’il s’agit d’une page d’archivage temporelle (horaire, minutieux ou en second lieu).$ is_author
: Vérifie s'il s'agit d'une page d'archive d'auteur ou non.$ is_category
: Vérifie s'il s'agit d'une page d'archive de catégorie ou non.$ is_tag
: Vérifie s'il s'agit ou non d'une page d'archive de balises.$ is_tax
: Vérifie s'il s'agit ou non d'une page d'archive de taxonomie.$ is_search
: Vérifie s'il s'agit ou non d'une page de "résultats de recherche".$ is_feed
: Vérifie s'il s'agit d'un flux ou non.$ is_comment_feed
: Vérifie s'il s'agit d'un commentaire ou non.$ is_trackback
: Vérifie s'il s'agit d'un trackback ou non.$ is_home
: Vérifie s'il s'agit ou non de la page principale du blog.$ is_404
: Vérifie s'il s'agit d'une page d'erreur 404 ou non.$ is_comments_popup
: Vérifie s'il s'agit d'une fenêtre de commentaires ou non.$ is_admin
: Vérifie s'il s'agit du panneau d'administration ou non.$ is_attachment
: Vérifie s'il s'agit d'une pièce jointe ou non.$ is_singular
: Vérifie s’il s’agit d’un message simple de tout type (quel que soit le type de message "pièce jointe" ou "page") ou non.$ is_robots
: Vérifie s'il s'agit d'une requête pour le robots.txt
déposer ou non.$ is_posts_page
: Vérifie s’il s’agit de la page "Posts" (définie sur la page "Paramètres de lecture" du panneau d'administration) ou non.$ is_paged
: Vérifie s'il s'agit d'une requête paginée et que ce n'est pas la première page.Maintenant que nous en avons terminé avec les propriétés, passons aux méthodes (fonctions) de WP_Query
classe.
init ()
Cette méthode initialise simplement l’objet, en définissant toutes les propriétés sur NUL
, 0
ou FAUX
.
parse_query ($ query)
Cette méthode utilise le $ requête
propriété pour analyser la requête et remplir toutes les autres propriétés (sauf $ posts
, $ post_count
, $ post
et $ current_post
).
parse_query_vars ()
Cette méthode reparses les variables de requête.
get ($ query_var)
Cette méthode va chercher une variable de requête donnée.
set ($ query_var, $ value)
Cette méthode définit la variable de requête donnée sur une valeur spécifique..
& get_posts ()
Cette méthode renvoie les articles demandés par la requête et renseigne le $ posts
et $ post_count
Propriétés.
next_post ()
Cette méthode incrémente le $ current_post
index et avance au prochain post dans $ posts
, renvoyer l'objet de publication en cours. (Cette méthode doit être utilisée dans une boucle pour fonctionner correctement.)
la poste()
Cette méthode définit le global $ post
variable avec les données du prochain post. (Cette méthode doit être utilisée dans une boucle pour fonctionner correctement.)
have_posts ()
Cette méthode vérifie s’il reste des publications sur lesquelles travailler et renvoie FAUX
s'il n'y en a pas. (Cette méthode doit être utilisée avant une boucle pour fonctionner correctement.)
rewind_posts ()
Cette méthode réinitialise simplement le $ current_post
et $ post
Propriétés.
& query ($ query)
Cette méthode appelle deux de ses méthodes frères, parse_query ()
et get_posts ()
, et retourne le résultat de get_posts ()
.
get_queried_object ()
Cette méthode retourne l'objet demandé. (Il établit $ queried_object
si ce n'est pas déjà défini.)
get_queried_object_id ()
Cette méthode, similaire à celle ci-dessus, renvoie l'ID de l'objet interrogé ($ queried_object_id
).
Conseil rapide: S'il y a une esperluette avant une méthode, cela signifie que la méthode retourne par référence.
J'espère que j'ai réussi à vous expliquer ce que "propriétés" et "méthodes" signifient pour les classes. Et si vous comprenez le but des propriétés et des méthodes de la WP_Query
classe, je peux dire que j'ai fait un travail décent!
Avez-vous quelque chose à ajouter à cet article? Partagez vos idées avec nous dans la section Commentaires ci-dessous. Et si vous avez aimé l'article, n'oubliez pas de le partager avec vos amis.
Rendez-vous dans la prochaine partie de la série!