La manière de WordPress d'afficher les messages • WPShout

By | avril 27, 2021

Formation WordPress

Cet article présente l'un des sujets les plus importants du développement WordPress: la boucle WordPress, ou plus communément «la boucle». Si vous êtes intéressé par d'autres concepts clés du développement de thèmes WordPress, consultez notre cours gratuit sur la mise en route des thèmes WordPress.

Ce contenu est génial, car il ne s’agit pas simplement d’un de nos articles habituels: il s’agit d’un exemple de chapitre de notre guide «Apprendre le développement WordPress» Opérationnel, maintenant dans sa 3e édition révisée et étendue.

Si vous aimez ce chapitre, consultez Opérationnel. Il y a environ 40 autres chapitres d'où celui-ci est venu. C'est le meilleur guide du développement WordPress sur le marché.

La meilleure façon d'apprendre le développement WordPress

Opérationnel est notre cours complet "Apprendre le développement WordPress". Maintenant dans sa troisième édition mise à jour et étendue, il a aidé des centaines d'acheteurs satisfaits à apprendre le développement WordPress de manière rapide, intelligente et approfondie.

Voici ce que l'un d'eux avait à dire:

"Je pense que toute personne intéressée par l'apprentissage du développement WordPress A BESOIN de ce cours. Regarder les vidéos était comme un tas de lumières allumées." -Jason, développeur WordPress


Points clés à retenir:

  • La boucle est un sujet extrêmement important dans le développement de thèmes WordPress: c'est comment WordPress rend un ensemble d'articles récupérés de la base de données dans une page Web HTML.
  • The Loop est un PHP tandis que-loop qui s'exécute une fois par message récupéré. À l'intérieur, les développeurs de thèmes définissent des règles répétées pour l'affichage de chaque article, principalement en utilisant les balises de modèle de WordPress.
  • La boucle doit exister dans chaque fichier de thème faisant partie de la hiérarchie des modèles WordPress. La personnalisation de cette boucle est un moyen majeur par lequel les thèmes créent différentes vues et mises en page pour les pages Web qui affichent différents types de publications (par exemple, des publications et des pages).

La boucle est peut-être les concept clé du développement de thèmes WordPress, vous voudrez donc certainement en faire le tour. Heureusement, ce n’est pas si compliqué! Notre objectif ici est de clarifier d'abord le concept, puis de passer à autre chose et de vous montrer comment le code fonctionne.

La boucle en anglais simple

Dans cette section, pas de programmation. Nous allons simplement passer en revue les concepts de base.

La boucle de WordPress existe dans les fichiers de modèle PHP

Comme nous l'avons vu dans le dernier chapitre, un thème est constitué avant tout de ses fichiers de modèle PHP. La hiérarchie des modèles WordPress dicte quels les pages Web (et post bundles) à associer avec lesquels fichiers de modèle: par example, page.php pour une demande qui extrait la page "À propos de" d'un site, home.php pour une demande qui extrait la page d'index du blog du site, et index.php comme solution de secours universelle si quelque chose de plus haut dans la hiérarchie n'est pas déclenché.

Une fois que nous savons avec quel fichier modèle nous travaillons, il est temps d’entrer dans les entrailles du fichier lui-même, et c’est là que nous trouverons The Loop.

La boucle est ce qui traite les publications dans WordPress

Vous spécifiez le formatage dans The Loop, et WordPress applique ce formatage à tous publier dans le groupe récupéré, c'est pourquoi il s'appelle The Loop.

La boucle WordPress est la façon dont WordPress traite tout ensemble de publications récupérées.

Dans The Loop, vous spécifiez la manière dont vous souhaitez que chaque article du groupe récupéré soit mis en page. WordPress «parcourra» le bundle et réutilisera le format spécifié pour tous post dans le bundle, c'est pourquoi il s'appelle The Loop.

Ainsi, The Loop est le plus évident, par exemple, sur la page d'index de votre blog, où WordPress parcourt de nombreux articles de blog, réutilisant le format que nous avons spécifié pour chacun.

Cependant, s'il n'y a qu'un seul article sur la page Web – lorsque quelqu'un demande, par exemple, un seul article de blog ou la page «À propos de» du site – WordPress utilisera toujours le concept de base de The Loop pour afficher le (unique) article sur la page Web. .

La boucle de WordPress est le cœur personnalisable des fichiers de modèles

La modification du contenu de la boucle est un moyen principal de faire en sorte que vos fichiers de modèle se comportent différemment.

La boucle est le moteur de n'importe quel fichier de modèle, et il est hautement personnalisable; il varie fichier par fichier. La modification du contenu de la boucle est un moyen principal de faire en sorte que vos fichiers de modèle se comportent différemment.

Par exemple, vous souhaiterez peut-être créer la page d'index de votre blog (contrôlée par votre thème home.php) affiche uniquement des extraits d'un paragraphe de vos articles de blog, au lieu de tout le contenu. Pour ce faire, vous utiliserez le the_excerpt () balise de modèle à l'intérieur home.phpBoucle de. (Nous aborderons les balises de modèle plus tard, dans La magie de les_() et obtenir le_() Tags de modèle de publication-ils sont cool!)

Dans le même temps, vous voulez toujours les pages Web de vos articles de blog individuels (contrôlés par single.php) pour afficher l'intégralité du contenu de l'article, pas seulement un extrait. Donc à l'intérieur du single.php Boucle, vous utiliserez le le contenu() balise de modèle, au lieu de the_excerpt ().

Être capable de dicter ces différences est une grande partie de ce qu'est le développement de thèmes WordPress.

Un exemple de boucle WordPress

Certains fichiers de modèle sont très petits mais La boucle.

Ci-dessous, vous verrez le single.php pour le thème populaire Twenty Fifteen de WordPress. The Loop est sur les lignes 15 à 43. Nous ne vous effrayerons pas encore avec ce qu'il y a à l'intérieur de The Loop lui-même (les lignes 18 à 39 sont donc masquées) – mais notez que single.php ce n'est pas grand-chose mais La boucle! En d'autres termes, The Loop effectue presque tout le travail qui permet à ce fichier modèle d'afficher son contenu.

La boucle dans le thème Twenty Fifteen MARKDOWN_HASH6ce624532346493b7a0d1a63ecfc68ceMARKDOWN_HASH.

C'est donc une boucle dans la nature. Laissons maintenant Twenty Fifteen tranquilles et parlons de l'anatomie générale d'une boucle dans quelconque thème.

La version minimale de The Loop

Ici, nous allons examiner le code PHP simple qui compose The Loop. Ce code peut être écrit de deux manières, et les deux font exactement la même chose. Soit:

<? php
/ * Environnement: Nous sommes à l'intérieur d'un fichier de modèle de thème dans la hiérarchie de modèles WordPress * /

if (have_posts ()) 
    while (have_posts ()) 
        la poste();

        // (Le contenu de la boucle ira ici)

     // fin pendant
 // fin si

Ou alors…

<? php
/ * Environnement: Nous sommes à l'intérieur d'un fichier de modèle de thème dans la hiérarchie de modèles WordPress * /

if (have_posts ()):
    while (have_posts ()):
        la poste();

        // (Le contenu de la boucle ira ici)

    en attendant;
fin si;

Ne vous attendez pas trop à ce qu’il y ait deux façons d’écrire The Loop – ce ne sont que deux façons de «ponctuer» PHP, et elles signifient la même chose. Nous préférons la deuxième façon de l’écrire, nous allons donc nous en tenir à celle-là tout au long du chapitre.

Comment fonctionne la boucle dans WordPress

La boucle est vraiment une boucle, au sens de la programmation.

Dans cette section, nous vous proposons une explication ligne par ligne du deuxième exemple de boucle ci-dessus (celui avec le à la fin dedans).

La première chose à remarquer est que The Loop est vraiment une boucle, au sens de la programmation. En d'autres termes, il itère (boucle) sur un ensemble d'articles WordPress – et ne s'arrête pas tant qu'il n'y a plus d'articles. Voici comment cela fonctionne, ligne par ligne:

if (have_posts ()):

The Loop demande d'abord à l'environnement WordPress plus large: «Des articles ont-ils été récupérés pour que je les traite?» Il le demande en utilisant une fonction WordPress appelée have_posts (). Cette fonction revenirs (rend) soit vrai, s'il y a des messages à traiter, ou faux, s'il n'y en a pas.

Si la réponse dont nous revenons have_posts () est vrai, alors qu'y a-t-il à l'intérieur si– déclaration – qui est la boucle elle-même – fonctionnera. Sinon, notre moteur PHP passe directement au-dessus de The Loop, car il n'y a rien à parcourir!

while (have_posts ()):

Puisque nous sommes passés à l'intérieur de l'initiale si-déclaration, nous savons que nous avons effectivement des messages à parcourir. Donc, cette ligne est là où la boucle est réelle boucle départs. C’est un PHP tandis que boucle: quelque chose qui continue d'itérer tant que («while») une condition est vraie.

En anglais, cette ligne dit "Tant que nous avons encore des articles à traiter:" En d'autres termes, cette boucle exécutera le code qu'il contient une fois par article, tandis que il y a encore des messages sur lesquels agir. Lorsqu'il n'y a plus de messages, The Loop s'arrêtera et la page passera à la chose suivante dans ce modèle PHP.

la poste();

Rappelez-vous, nous sommes maintenant à l'intérieur du tandis que boucle décrite ci-dessus. Cette ligne dit: "Puisque nous avons un message sur lequel travailler, commençons par mettre en file d'attente le message actuel."

la poste() est ce que fait la «mise en file d'attente» – il configure essentiellement le prochain objet de publication récupéré sur lequel travailler par les processus WordPress disponibles dans The Loop. La boucle nécessite cette fonction, mais nous n’avons pas besoin d’en savoir trop.

// (Le contenu du message ira ici)

Cette section est le contenu principal de The Loop. C'est là que nous arriverons à être créatifs – où nous allons écrire du code pour travailler avec chaque post récupéré, un par un. Comme c'est la section que nous allons écrire nous-mêmes, elle est actuellement vide, à l'exception d'un commentaire PHP d'espace réservé. Nous explorerons cette section plus en détail dans le reste de ce chapitre.

en attendant;

C’est la façon dont PHP dit: «Nous en avons terminé avec le tandis que boucle dans laquelle nous étions. N'importe quoi entre tandis que () : et en attendant; est à l'intérieur de cette boucle; tout ce qui se trouve après est en dehors de celui-ci et ne sera exécuté qu'une fois tandis que la boucle elle-même est terminée.

fin si;

C’est la façon dont PHP dit: «Nous en avons terminé avec le si-déclaration dans laquelle nous étions. N'importe quoi entre si () : et fin si; ne s'exécute que si le si-la déclaration est vraie; quoi que ce soit après qu'il ne soit pas affecté par le si-déclaration elle-même.

Un exemple de boucle en action

Maintenant que nous comprenons la syntaxe de base du «squelette» de The Loop, voici une boucle très simple qui en fait Est-ce que quelque chose:



        

<? php end while; fin si;

Ce que cette boucle produit pour les thèmes WordPress

Pour chaque article du bundle, cette boucle crée d'abord un HTML

étiqueter. À l'intérieur, il affiche d'abord le titre, puis un court extrait – par défaut, les 55 premiers mots suivis de […]—Du message actuel.

Donc, en prenant quelques articles du blog de notre site Press Up comme exemples, la boucle ci-dessus produit:

Ce que votre produit minimum viable devrait mesurer

Dans notre dernier article, nous vous avons présenté l'idée du produit minimum viable (MVP) et couvert certains des défis internes qui surviennent souvent lorsque vous vous préparez à partager une version bêta de votre idée. Un MVP n'est pas seulement une version rapide et bon marché de votre produit que vous lancez parce que c'est facile. Au […]

Commencer petit: créer un produit viable minimum

Une erreur courante des entrepreneurs est de commencer avec une idée très précise et de travailler aussi fort que possible pour que cela fonctionne. Cela peut fonctionner très bien, mais comme de nombreux entrepreneurs l'apprennent, il est beaucoup trop facile de se précipiter ou d'ignorer complètement le processus de raffinage de nos idées initiales en quelque chose que les gens veulent vraiment. Pas […]

Comment planifier un projet Web réussi

Il est trop facile de planifier un projet Web en termes de technologies plutôt que de solutions. Trop de projets Web n'atteignent pas leurs objectifs. Le projet pourrait être la mauvaise solution pour le bon objectif, la bonne solution pour le mauvais objectif - ou, peut-être le pire de tous, une solution brillante sans but. Le problème est […]

// (Et ainsi de suite pour de nombreux autres articles)

Modèles à remarquer sur la boucle

Quelques points à noter dans cet exemple de boucle:

  1. Remarquez comment nous nous déplaçons entre le simple HTML et PHP. Rappelez-vous, tout ce qui n'est pas à l'intérieur est du HTML pur: dans notre cas, c'est le

    et

    Mots clés. Ceux-ci sont imprimés directement sur la page Web à chaque fois que The Loop répète un nouveau message.

  2. La vraie viande ici – et là où nous entrons dans la magie de WordPress – ce sont les deux PHP balises de modèle nous utilisons: le titre(), qui, lorsqu'il est utilisé dans The Loop, imprime le titre de l'article actuel; et the_excerpt (), qui imprime le début du contenu de l'article. Nous couvrons les balises de modèle en détail dans La magie de les_() et obtenir le_() Tags de modèle de publication.

Si vous avez créé un thème dont le seul fichier de hiérarchie de modèle était index.php, et collé la boucle ci-dessus dans ce index.php fichier, cela fonctionnerait. La page d’accueil de votre site afficherait tous les titres et extraits de vos publications les plus récentes, la page «À propos de» de votre site afficherait le titre et l’extrait de la copie de cette page, et ainsi de suite.

Vous maîtrisez maintenant WordPress-Loop

Nous espérons que cette explication de The Loop rendra ses principes fondamentaux clairs. Les boucles de la plupart des vrais thèmes seront plus compliquées, mais c’est un vrai début.

Encore une fois, vous en apprendrez plus sur la programmation des entrailles de The Loop avec des balises de modèle telles que le contenu() dans La magie de les_() et obtenir le_() Tags de modèle de publication. Pour le moment, cependant, vous maîtrisez les boucles, et c’est une bonne chose! C'est l'une des parties les plus importantes du développement de thèmes WordPress.

Résumé Limerick

La boucle est une boucle qui s'exécute tandis que
Il y a encore des poteaux non travaillés dans la pile.
Chaque article, et ses suites,
Sont marqués comme égaux
Pour former le fichier HTML.

Temps de quiz!

  1. La boucle est présente dans:
    1. Fichiers dans la hiérarchie des modèles comme single.php et page.php
    2. functions.php
    3. Modèles WordPress «toujours utilisés» comme header.php et footer.php
  2. La boucle fait généralement ne pas contenir:
    1. Un PHP pour boucle
    2. Un PHP tandis que boucle
    3. Un PHP si-déclaration
  3. La boucle WordPress fonctionne:
    1. Une fois que
    2. Une fois par message récupéré
    3. Une fois par article dans la base de données

Réponses et explications

  1. UNE. Les fichiers de la hiérarchie des modèles WordPress doivent toujours inclure The Loop; les autres fichiers de thème ne le font généralement pas.
  2. UNE. Non pour( ) la logique est utilisée dans une version régulière de The Loop.
  3. B. La boucle tandis ques à travers chaque publication qui a été récupérée pour construire la page actuelle – pas une fois pour chaque publication dans toute la base de données. Ce serait fou: un site WordPress peut contenir des centaines, voire des milliers d'articles dans sa base de données, et la création d'une page nécessite souvent de ne récupérer qu'un seul de ces articles, ou une poignée.

[ad_2]