Configuration _ postdata (): balise de modèle requise, tableau WP post personnalisé requis

Setup _ postdata () permet de traiter namp;rsquoimporte quel paquet de messages de la manière habituelle avec les résultats de la requête WP query. Setup _ postdata () est une fonctionnalité que j’aime beaucoup chez WordPress car elle permet d’utiliser n’importe quel paquet Post et la boucle foreach () comme le feriez normalement avec les résultats des requêtes WP et des boucles personnalisées. Cet article explique le sens de cette phrase et son intérêt, ainsi que quelques exemples damp;rsquoutilisation. J’aime vraiment la fonctionnalité de configuration _ postdata de WordPress, donc si n’êtes pas familier, je recommande fortement de continuer à suivre
Définition de
Lorsque nous disons
Code Postal. (donc un post qui commence par
Il est facile damp;rsquoobtenir nos messages de la catégorie Édition. Pour ce faire dans un autre article, nous avons écrit une requête WP _ personnalisée, de sorte que nous ne conservons que lamp;rsquoobjet WP post stocké dans lamp;rsquoattribut posts de lamp;rsquoobjet WP Query (le reste de lamp;rsquoinformation dans la requête Wp est éliminé). Cette fois ci, pour plus damp;rsquoefficacité, nous utiliserons une fonction plus simple, get _ posts (), qui ressemble à WP query, mais ne récupère damp;rsquoabord que lamp;rsquoobjet WP post. Voici son apparence: Fetch posts $args = array (amp;lsquoTax _ Queryamp;rsquo = amp;gt array (array (amp;lsquoTaxonomyamp;rsquo = amp;gt Category amp;lsquo,amp;rsquo Field amp;lsquo= amp;gt Slugamp;rsquo, amp;lsquotermsamp;rsquo = amp;gt Editorialamp;rsquo), amp;lsquoposts per pageamp;rsquo = amp;gt 1,) $ Posts = get _ posts ($args) Ce que nous allons faire ensuite, camp;rsquoest expliquer quelques tours de magie dans un autre article:
Définir la fonction de tri wpshout _ sort by content ($a, $b) {renvoie strcmp (WP Strip all tags ($a amp;gt Post content), WP Strip all tags ($B amp;gt Post content)} Trier les messages en utilisant ($posts, amp;lsquowpshout _ sort by Contentamp;rsquo) Et violet! Violet nous avons maintenant une matrice damp;rsquoobjets WP _ Post, triés par contenu post. Nous ne pouvons pas arriver ici en utilisant seulement WP _ Query ou get posts (): Nous devons faire un peu damp;rsquointelligence dans le tri. Camp;rsquoest là que se termine le tutoriel précédent. La clé pour que Setup _ postdata () fonctionne est la suivante: Comment pouvons nous visualiser facilement et de manière attrayante une série de messages que nous avons mis ensemble?
Pourquoi Setup _ postdata () est il intéressant: comment continuer lamp;rsquoexemple ci dessus en utilisant la balise Template dans foreach (): supposons que nous voulions maintenant construire un modèle de page damp;rsquoarchive pour afficher les données qui viennent damp;rsquoêtre récupérées. Comment y arriver? Nous pouvons utiliser des balises de modèles WordPress comme _ Title () et content (), comme dans les boucles par défaut ou les boucles construites autour de WP
Personnaliser la requête? Notez que la méthode Loop nécessite un objet de requête WP _ query. Nous ne lamp;rsquoavons pas du tout: Nous avons un tableau damp;rsquoobjets de type WP _ post. Il est donc impossible damp;rsquoutiliser des boucles (qui ressemblent à while ($posts amp;gt have _ Post ()), etc.).
Foreach () passe par lamp;rsquoobjet Post et nous devons utiliser la boucle PHP foreach (). Voici comment faire défiler le tableau PHP, y compris le tableau ordonné des messages que nous venons de créer en utilisant les méthodes de la section précédente. On dirait: Foreach ($posts as $Current _ post): effectuez quelques opérations sur chaque Post, appelé $Current post dans la boucle endforeach Mais pouvons nous utiliser lamp;rsquoétiquette du modèle? Non, ce ne sont généralement que des boucles. Par exemple, si nous mettons _ Title () dans la boucle, il ne renvoie que void, ou le même titre incorrect via lamp;rsquoitération foreach (). nous maintenons cet état, nous ne pourrons pas faire directement référence aux propriétés de lamp;rsquoobjet wp u post, par exemple:
Foreach ($published as $Current _ post): echo $Current post amp;gt Post title Echo wpautop ($Current _ post amp;gt Post content) Fin avant chaque Cela présente un inconvénient: les fonctions WordPress (par exemple wpautop ()) s’exécutent automatiquement sur les balises Template (par exemple _ content ()) et ne s’exécutent que si nous les appelons manuellement. Cela comprend également damp;rsquoimportantes fonctions damp;rsquoévacuation en toute sécurité. Les fonctions personnalisées (du sujet et du plug in) attachées à un filtre, comme _ title, ne samp;rsquoexécuteront pas. Camp;rsquoest plus difficile à écrire et à lire. Setup _ postdata () pour sauvegarder toutes ces restaurations, je peux maintenant montrer les avantages de Setup postdata (). Voir le code suivant: Global $post Appeler la variable $post globale foreach ($posts as $Current _ post): $post = $Current post Définissez la variable $post global à la configuration actuelle de lamp;rsquoobjet post u postdata ($post) Définir lamp;rsquoenvironnement pour lamp;rsquoétiquette du modèle habituellement utiliser lamp;rsquoétiquette du modèle _ Title ()
Nd. Après cela, nous lancerons WP _ Reset postdata () comme après avoir personnalisé la requête WP pour la même raison: Nous voulons
Stri Post

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

ContactPress Supported By WordPress Plugins