Le plugin WordPress Plugin Part 3: Les dernières étapes
Les plats clés
- La troisième partie de la série de buiscenles de plugin WordPress se concentre sur la mise en œuvre des fonctionnalités de la face du public du plugin, qui comprend la récupération des préférences des utilisateurs et l'affichage d'un avis en conséquence sur sa vue unique.
- Le guide explique comment préparer le thème pour les tests, comment s'accrocher au filtre_content, comment modifier le contenu conditionnellement, et comment calculer la différence des jours entre l'heure actuelle et le dernier heure modifiée.
- Styling Le texte du préavis est également discuté, l'auteur fournissant un guide de style simple pour correspondre à la conception globale du thème. L'auteur suggère également des améliorations potentielles, telles que le texte dynamique pour différents contextes et un préavis licenciable.
- L'auteur conclut en mettant en évidence les avantages de la buissier debout du plugin WordPress, notant sa structure claire, l'adhésion aux meilleures pratiques et l'aspect économe en temps d'avoir un point de départ solide pour le développement du plugin.
Dans la deuxième partie de cette série, nous avons préparé des fonctionnalités simples d'administration pour notre plugin. Nous avons fourni aux utilisateurs une page d'options où ils peuvent modifier le plugin en fonction de leurs préférences.
Si vous avez manqué les parties 1 et 2, veuillez les trouver ci-dessous:
- Le plugin WordPress Plugin Part 1: accélérer le développement à l'aide de la baillire de plugin WordPress
- Le plugin wordpress Pileplate Part 2: Développer un plugin WordPress
Pour cet article, nous allons implémenter les fonctionnalités du public du plugin. Cela signifie que nous allons récupérer les préférences de l'utilisateur, déterminer si ce message spécifique est dépassé ou non et afficher l'avis en conséquence sur sa vue unique. Commençons!
Préparer le thème
Nous devons préparer notre thème afin que nous puissions le tester plus tard. Nous allons utiliser le thème Twenty Fifteen qui est expédié par défaut avec WordPress. Plutôt que de remplir les messages manuellement, nous allons utiliser les données de test d'unité de thème fournies par l'équipe de révision du thème pour remplir les messages.
Nous devons télécharger le thème-unit-test-data.xml fourni sur la page Codex ci-dessus et l'importer dans notre installation WordPress. La fonctionnalité d'importation intégrée WordPress peut être trouvée en naviguant vers des outils> Importation de la barre latérale.

Nous serons présentés avec divers choix, et comme nous importons le fichier d'exportation WordPress, nous allons choisir WordPress. Selon l'installation de WordPress, une fenêtre de plugin sera affichée si nous n'avons pas installé le plugin WordPress Importateur. Allez-y simplement et installez d'abord le plugin si vous ne l'avez pas et nous procéderons avec le processus d'importation réel une fois qu'il est fait.

Il s'agit de la page d'importation WordPress par défaut, nous devrons donc choisir le thème-unité-test-data.xml téléchargé précédemment et cliquez sur le bouton "Télécharger le fichier et l'importation".

Un deuxième écran sera alors présenté. Ne vous inquiétez pas beaucoup de la section «Assign les auteurs» car nous pouvons le laisser par défaut. Dans la section «Importer les pièces jointes», assurez-vous de cocher la case à cocher «Télécharger et importer des pièces jointes» afin que toutes les pièces jointes externes soient téléchargées et importées dans la bibliothèque de médias.
Appuyez sur le bouton «Soumettre» et attendez que le processus d'importation se soit effectué avec succès.
Maintenant, nous sommes prêts à écrire le code qui affiche notre avis.
accrochez-vous au filtre_content
L'utilisation du filtre_content est le moyen idéal pour modifier le contenu des articles affichés à l'utilisateur. Selon le didacticiel précédent, nous allons ajouter le crochet au chargeur de classe de la bailli, la seule différence étant que la méthode Define_public_hooks sera utilisée au lieu de Define_Admin_Hooks.
Ajoutez cette ligne de code dans la méthode:
<span>$this->loader->add_action( 'the_content', $plugin_public, 'the_content' );</span>
Cela signifie que nous devrons implémenter une méthode publique THE_CONTENT dans notre classe OUTDATED_NOTICE_PUBLIC. Ouvrez public / classe-ex-éteinte
Modification conditionnelle du contenuParce que le filtre THE_CONTENT est utilisé par divers plugins et le noyau interne WordPress, nous devons être prudents pour y insérer notre contenu personnalisé.
Nous devons nous assurer que nous n'inservons le texte de l'avis obsolète que chaque fois qu'un seul article est affiché, et non sur l'index de l'article de blog. Pour ce faire, nous pouvons le filtrer en utilisant la fonction is_main_query. Cette fonction est utile chaque fois que nous avons besoin de déterminer si la requête en cours d'exécution est la requête principale ou secondaire / personnalisée.
Une autre chose que nous devons considérer est que nous allons seulement afficher le texte de préavis pour une seule vue de la publication de post, donc la validation est_singular ('post') sera parfaite pour le travail.
Il s'agit de la méthode THE_CONTENT mise à jour contenue à l'intérieur de la classe Outdated_notice_Public.
<span>public function the_content( $post_content ) { </span> <span>if ( is_main_query() && is_singular('post') ) { </span> <span>// do something </span> <span>} </span> <span>return $post_content; </span> <span>}</span>
Avant de commencer, définissons notre position pour que l'avis apparaisse comme «avant» le message, et le seuil de jours à 30.
Tout d'abord, nous devons récupérer les paramètres stockés de notre plugin. La fonction get_option fera le travail, et en toute sécurité, nous allons passer une valeur par défaut en tant que deuxième argument pour get_option.
<span>$this->loader->add_action( 'the_content', $plugin_public, 'the_content' );</span>
Pour calculer la différence des jours entre l'heure actuelle et le dernier temps modifié, nous allons instancier deux objets DateTime. Nous pouvons obtenir une mesure précise de la différence de temps en utilisant la méthode Diff intégrée à la classe DateTime. Notez que la classe DateTime n'est disponible que sur php> = 5.3.0.
<span>public function the_content( $post_content ) { </span> <span>if ( is_main_query() && is_singular('post') ) { </span> <span>// do something </span> <span>} </span> <span>return $post_content; </span> <span>}</span>
$ date_diff est une instance de la classe DateInterval, nous allons donc avoir une gamme de données disponibles en ce qui concerne les différences de temps. Si nous sommes à var_dump la variable $ date_diff, c'est ce que nous devons obtenir, selon le message que vous consultez actuellement.
<span>$position = get_option( 'outdated_notice_position', 'before' ); </span> <span>$days = (int) get_option( 'outdated_notice_day', 0 );</span>
Nous ne sommes intéressés que par la valeur des jours car il sera utilisé comme comparaison avec notre seuil de jour. Comme je l'ai déjà dit, nous allons les comparer afin que nous puissions appliquer la classe spécifique à notre élément div de préavis pour le coiffer différemment entre les messages.
<span>$date_now = new DateTime( current_time('mysql') ); </span> <span>$date_old = new DateTime( get_the_modified_time('Y-m-d H:i:s') ); </span> <span>$date_diff = $date_old->diff( $date_now );</span>
Ce bloc de comparaison simple est suffisant pour déterminer la classe à utiliser pour notre div. La seule chose qui reste maintenant est de construire réellement le HTML à ajouter au contenu du post.
Pour un meilleur texte prêt à la traduction, nous allons utiliser la fonction _n pour choisir sélectivement le texte approprié à utiliser en fonction du nombre de jours depuis la dernière mise à jour de la publication. Ensuite, nous allons envelopper le texte de l'avis dans son propre div afin que nous puissions le coiffer plus tard. N'hésitez pas à modifier le texte de l'avis à votre propre goût.
<span>object(DateInterval)#286 (8) { </span> <span>["y"]=> </span> <span>int(0) </span> <span>["m"]=> </span> <span>int(0) </span> <span>["d"]=> </span> <span>int(12) </span> <span>["h"]=> </span> <span>int(23) </span> <span>["i"]=> </span> <span>int(17) </span> <span>["s"]=> </span> <span>int(22) </span> <span>["invert"]=> </span> <span>int(0) </span> <span>["days"]=> </span> <span>int(12) </span> <span>}</span>
La variable de préavis $ devrait désormais contenir le balisage que nous allons insérer dans notre contenu de publication. La seule chose à faire est de l'ajouter.
<span>if ( $date_diff->days > $days ) { </span> <span>$class = 'is-outdated'; </span> <span>} else { </span> <span>$class = 'is-fresh'; </span> <span>}</span>
En tant que récapitulatif, c'est à quoi la méthode du_content à l'intérieur outdated_notice_public devrait enfin regarder.
<span>// Filter the text </span> <span>$notice = sprintf( </span> <span>_n( </span> <span>'This post was last updated %s day ago.', </span> <span>'This post was last updated %s days ago.', </span> <span>$date_diff->days, </span> <span>'outdated-notice' </span> <span>), </span> <span>$date_diff->days </span> <span>); </span> <span>// Add the class </span> <span>$notice = '<div >' . $notice . '</div>'; </span> <span>$notice = sprintf( $notice, $class );</span>
Essayez de parcourir quelques pages pour voir si notre plugin fonctionne comme prévu. C'est ce que je vois lorsque je parcoure le message "Hello World" sur URL

Styler le texte de préavis
Nous allons appliquer un style simple à la div. Pour ce faire, nous n'allons rien changer en ce qui concerne la taille de la police ou la famille qui est déjà utilisée. De plus, nous allons emprunter la palette de couleurs et le style pour le moment.
Ouvrez le fichier de notes-Public.css obsolèce obsolète contenu dans le dossier public / CSS et ajoutez cette règle.
<span>if ( 'after' == $position ) { </span> <span>$post_content .= $notice; </span> <span>} else { </span> <span>$post_content = $notice . $post_content; </span> <span>}</span>
Nous avons également besoin de deux styles différents pour représenter la post-fraîcheur, qui est un style pour .is-fresh et un autre pour. Est-il exposé. Cet extrait devrait faire l'affaire, nous donnant une belle palette de couleurs verte pour un message frais et une palette de couleurs rouge pour un message obsolète.
<span>public function the_content( $post_content ) { </span> <span>if ( is_main_query() && is_singular('post') ) { </span> <span>$position = get_option( 'outdated_notice_position', 'before' ); </span> <span>$days = (int) get_option( 'outdated_notice_day', 0 ); </span> <span>$date_now = new DateTime( current_time('mysql') ); </span> <span>$date_old = new DateTime( get_the_modified_time('Y-m-d H:i:s') ); </span> <span>$date_diff = $date_old->diff( $date_now ); </span> <span>if ( $date_diff->days > $days ) { </span> <span>$class = 'is-outdated'; </span> <span>} else { </span> <span>$class = 'is-fresh'; </span> <span>} </span> <span>// Filter the text </span> <span>$notice = sprintf( </span> <span>_n( </span> <span>'This post was last updated %s day ago.', </span> <span>'This post was last updated %s days ago.', </span> <span>$date_diff->days, </span> <span>'outdated-notice' </span> <span>), </span> <span>$date_diff->days </span> <span>); </span> <span>// Add the class </span> <span>$notice = '<div >' . $notice . '</div>'; </span> <span>$notice = sprintf( $notice, $class ); </span> <span>if ( 'after' == $position ) { </span> <span>$post_content .= $notice; </span> <span>} else { </span> <span>$post_content = $notice . $post_content; </span> <span>} </span> <span>} </span> <span>return $post_content; </span> <span>}</span>
Refreint la vue de la publication et voyons comment elle est stylée. Exemples d'un post frais et obsolète:


c'est tout! Nous avons maintenant notre plugin entièrement fonctionnel développé en fonction de la bailli-plaque de plugin WordPress.
Améliorations
Il y a diverses choses qui peuvent être améliorées en fonction de ce que nous avons fait jusqu'à présent. Parmi eux se trouvent:
- Texte dynamique pour différents contextes, où nous pouvons utiliser un texte différent pour l'avis obsolète.
- Supprimez le script de mise en œuvre du script de note-notice.js car il n'est pas utilisé.
- Avis licenciable afin qu'il n'interrompt pas l'expérience utilisateur lors de la lecture du message.
Conclusion
La bailLotplate de plugin WordPress offre un point de départ parfait pour développer n'importe quel plugin à partir de zéro. Dans cette dernière partie de la série, nous avons terminé en développant les fonctionnalités de notre plugin. Les modifications bien que assez simples sont effectuées en peu de temps, tout en maintenant le modèle OOP établi par la passerelle elle-même et adhérant aux normes et aux meilleures pratiques.
Une copie complète du code est disponible comme d'habitude chez GitHub sur la branche de la partie-3.
Questions fréquemment posées (FAQ) sur WordPress Plugin Playplate
Quelle est la baillire de plugin WordPress et pourquoi est-elle importante?
La bailler de plugin WordPress est une base standardisée, organisée et orientée objet pour construire des plugins WordPress de haute qualité. Il fournit une structure claire et cohérente facile à comprendre et à travailler avec, en particulier pour les développeurs qui sont nouveaux dans le développement des plugins WordPress. C'est important car il permet d'économiser du temps et des efforts en fournissant un point de départ solide, en réduisant la nécessité d'écrire du code commun à partir de zéro. Il promeut également les meilleures pratiques dans le codage, l'amélioration des performances, la sécurité et la maintenabilité de vos plugins.
Comment puis-je commencer à utiliser le buisaule de plugin WordPress?
Pour commencer à utiliser le boitrage de plugin WordPress, Vous devez d'abord le télécharger à partir de son référentiel GitHub. Une fois téléchargé, vous pouvez renommer le répertoire et les fichiers de la passerelle pour correspondre aux spécificités de votre plugin. Le code de la passe-partout est bien vendu, vous guidant sur où placer votre code personnalisé. N'oubliez pas de mettre à jour les en-têtes de plugin dans le fichier de plugin principal pour refléter les détails de votre plugin.
Puis-je utiliser la plaque bassette du plugin WordPress pour les projets commerciaux?
Oui, la buisaule du plugin WordPress est une ligne ouverte et sous licence sous le GPL, ce qui signifie que vous pouvez l'utiliser pour des projets personnels et commerciaux. Cependant, c'est une bonne pratique de reconnaître la passerelle dans la documentation ou les crédits de votre plugin.
Comment puis-je contribuer au projet de buissier debout WordPress?
La bailler à plugin WordPress est un projet axé sur la communauté, et les contributions sont toujours les bienvenues. Vous pouvez contribuer en signalant des bogues, en suggérant des améliorations ou en soumettant des demandes de traction sur son référentiel GitHub. Avant de contribuer, assurez-vous de lire et de comprendre les directives de contribution du projet.
Quelle est la structure de la plaque de buissier de plugin WordPress?
La plaque de chauffeur du plugin WordPress suit une structure spécifique conçue pour garder votre code organisé organisé et gérable. Il se compose de trois répertoires principaux: «administrateur», «comprend» et «public». Le répertoire «Admin» contient les fichiers CSS, JavaScript et PHP pour le côté spécifique de l'administrateur du plugin. Le répertoire «incluse» est utilisé pour définir la classe de plugin de base et d'autres fonctions partagées. Le répertoire «public» contient les fichiers pour le côté public du plugin.
Comment ajouter une nouvelle fonctionnalité à mon plugin à l'aide du boiseries de plugin WordPress?
Pour ajouter un nouveau fonctionnalité à votre plugin, vous créeriez généralement une nouvelle classe pour cette fonctionnalité dans le répertoire «inclue». Cette classe doit définir tous les crochets que votre fonctionnalité doit exécuter. Ensuite, vous instanciez cette classe dans la classe de plugin principale et l'ajoutez à la fonction «Exécuter». Cette approche modulaire facilite l'ajouter, la suppression ou la modification des fonctionnalités de votre plugin.
Comment gérer les options de plugin avec le buisaule de plugin WordPress?
La baillon de plugin WordPress fournit une classe pour Gestion des options de plugin dans le répertoire «administrateur». Cette classe comprend des fonctions pour l'enregistrement des paramètres, la définition de sections et de champs et de rendre la page des paramètres. Vous pouvez prolonger cette classe pour gérer les options spécifiques de votre plugin.
Comment puis-je internationaliser mon plugin avec le buisaule de plugin WordPress?
Le bobinage du plugin WordPress comprend une classe d'internationalisation dans le 'incluse' annuaire. Cette classe charge le domaine texte de votre plugin, ce qui lui permet de traduire dans d'autres langues. Il vous suffit de remplacer le domaine texte du placement d'espace réservé dans la buissier debout par le domaine de texte de votre plugin.
Comment puis-je enterrer les scripts et les styles avec le bobinage de plugin WordPress?
La boileuse à plugin WordPress fournit une conduite séparée de classes de classes distinctes? pour enterrer les scripts et les styles dans les répertoires «administra» et «public». Ces classes incluent des fonctions pour l'enregistrement et la mise en œuvre de vos scripts et styles, en s'assurant qu'ils sont chargés au bon endroit et au bon moment.
Comment désinstaller mon plugin proprement avec la baillire de plugin WordPress?
La baillon de plugin WordPress comprend un fichier de désinstallation.php qui est exécuté lorsque votre plugin est désinstallé à partir du tableau de bord WordPress. Ce fichier doit contenir n'importe quel code de nettoyage, tel que la suppression des options de plugin ou des tables de base de données. Cela garantit que votre plugin ne laisse aucune trace en retard lorsqu'il est désinstallé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds











Récemment, nous vous avons montré comment créer une expérience personnalisée pour les utilisateurs en permettant aux utilisateurs d'enregistrer leurs publications préférées dans une bibliothèque personnalisée. Vous pouvez porter des résultats personnalisés à un autre niveau en utilisant leurs noms à certains endroits (c'est-à-dire des écrans de bienvenue). Heureusement, WordPress facilite l'obtention d'informations sur les utilisateurs connectés. Dans cet article, nous vous montrerons comment récupérer des informations liées à l'utilisateur actuellement connecté. Nous utiliserons le get_currentUserInfo (); fonction. Cela peut être utilisé n'importe où dans le thème (en-tête, pied de page, barre latérale, modèle de page, etc.). Pour que cela fonctionne, l'utilisateur doit être connecté. Nous devons donc utiliser

Il existe quatre façons d'ajuster la liste des articles WordPress: utilisez des options de thème, utilisez des plugins (tels que l'ordre des types de publication, la liste des publiques WP, des trucs boxy), utilisez du code (ajoutez des paramètres dans le fichier functions.php), ou modifiez directement la base de données WordPress.

Les blogs sont la plate-forme idéale pour que les gens expriment leurs opinions, opinions et opinions en ligne. De nombreux débutants sont impatients de créer leur propre site Web, mais hésitent à s'inquiéter des obstacles techniques ou des problèmes de coûts. Cependant, comme la plate-forme continue d'évoluer pour répondre aux capacités et aux besoins des débutants, il commence maintenant à devenir plus facile que jamais. Cet article vous guidera étape par étape comment créer un blog WordPress, de la sélection de thème à l'utilisation des plugins pour améliorer la sécurité et les performances, vous aidant facilement à créer votre propre site Web. Choisissez un sujet et une direction de blog Avant d'acheter un nom de domaine ou d'enregistrer un hôte, il est préférable d'identifier les sujets que vous prévoyez de couvrir. Les sites Web personnels peuvent tourner autour des voyages, de la cuisine, des critiques de produits, de la musique ou de tout passe-temps qui suscite vos intérêts. Se concentrer sur les domaines qui vous intéressent vraiment peuvent encourager l'écriture continue

Voulez-vous savoir comment afficher les catégories d'enfants sur la page des archives de la catégorie parent? Lorsque vous personnalisez une page d'archive de classification, vous devrez peut-être le faire pour le rendre plus utile à vos visiteurs. Dans cet article, nous vous montrerons comment afficher facilement les catégories d'enfants sur la page des archives de la catégorie parent. Pourquoi les sous-catégories apparaissent-elles sur la page des archives de la catégorie des parents? En affichant toutes les catégories d'enfants sur la page des archives de la catégorie parent, vous pouvez les rendre moins génériques et plus utiles aux visiteurs. Par exemple, si vous exécutez un blog WordPress sur les livres et que vous avez une taxonomie appelée "thème", vous pouvez ajouter une sous-taxonomie telle que "roman", "non-fiction" afin que vos lecteurs puissent

Dans le passé, nous avons partagé comment utiliser le plugin PostExpirator pour expirer les publications dans WordPress. Eh bien, lors de la création du site Web de la liste d'activités, nous avons trouvé ce plugin très utile. Nous pouvons facilement supprimer les listes d'activités expirées. Deuxièmement, grâce à ce plugin, il est également très facile de trier les publications par date d'expiration du post. Dans cet article, nous vous montrerons comment trier les publications par date d'expiration post-expiration dans WordPress. Code mis à jour pour refléter les modifications du plugin pour modifier le nom du champ personnalisé. Merci Tajim de nous avoir fait savoir dans les commentaires. Dans notre projet spécifique, nous utilisons des événements comme types de publication personnalisés. Maintenant

Pour créer un site Web à l'aide de WordPress Host, vous devez: sélectionner un fournisseur d'hébergement fiable. Acheter un nom de domaine. Configurez un compte d'hébergement WordPress. Sélectionnez un sujet. Ajoutez des pages et des articles. Installez le plug-in. Personnalisez votre site Web. Publiez votre site Web.

Cherchez-vous des moyens d'automatiser votre site Web WordPress et vos comptes de médias sociaux? Avec l'automatisation, vous pourrez partager automatiquement vos articles de blog WordPress ou vos mises à jour sur Facebook, Twitter, LinkedIn, Instagram et plus encore. Dans cet article, nous vous montrerons comment automatiser facilement WordPress et les médias sociaux en utilisant IFTTT, Zapier et Uncanny Automator. Pourquoi automatiser WordPress et les médias sociaux? Automatiser votre wordpre

L'importation du code source WordPress nécessite les étapes suivantes: Créer un sous-thème pour la modification du thème. Importez le code source et écrasez les fichiers dans le sous-sujet. Activez le sous-thème pour le rendre efficace. Testez les modifications pour vous assurer que tout fonctionne.
