Explication détaillée du système de crochet WordPress: actions, filtres et crochets
WordPress utilise un modèle d'architecture basé sur des événements où les composants, les thèmes et les plugins de base déclenchent des événements à travers des crochets (crochets) à différentes étapes de l'exécution ou de l'interprétation PHP. Les crochets sont principalement divisés en actions et filtres: les actions sont utilisées pour ajouter ou supprimer les fonctions à différentes étapes de l'exécution de processus;
Le système de crochet de WordPress améliore l'évolutivité de la plate-forme, permettant d'ajouter, de supprimer et de modifier les fonctionnalités dans le code, les plugins et les thèmes de base, afin que les développeurs puissent étendre les plugins et les thèmes sans modifier le code source de base.
Les systèmes de crochets sont déclenchés à différentes étapes de l'exécution de WordPress et sont généralement utilisés avec les fonctions PHP do_actions()
et apply_filters()
. Ces événements peuvent être abonnés ou montés via add_action()
et add_filter()
. Cet article montrera comment les actions et les filtres sont utilisés à travers des exemples.
La signification des crochets, des actions et des filtres
Les crochets se réfèrent aux événements déclenchés par des noyaux, des thèmes et des plugins WordPress à différentes étapes de l'exécution ou de l'interprétation PHP. Lorsque ces événements sont déclenchés, toutes les fonctions et / ou les méthodes de classe sont montées sur ces événements seront exécutées dans le bon ordre.
Les actions et les filtres sont deux types de crochets: les actions sont utilisées pour ajouter ou supprimer les fonctions à différentes étapes de l'exécution de processus;
L'importance du système de crochet WordPress
L'importance d'un système de crochet WordPress réside dans son évolutivité. Il permet d'ajouter et de supprimer les fonctionnalités, ainsi que de modifier / modifier les implémentations des fonctionnalités dans les c?urs, les plugins et les thèmes WordPress.
écriture de plugins et de thèmes extensibles qui permettent à d'autres développeurs de les améliorer et de les étendre sans modifier le code source de base.
Par exemple, mon plugin de passerelle de paiement WooCommerce 2Checkout n'inclut pas les ic?nes affichant des types de cartes de crédit pris en charge sur la page de paiement, car je pense que c'est inutile. Cependant, j'ai ajouté un filtre au cas où l'utilisateur a des besoins différents.
Nous avons re?u une demande de support client pour que l'ic?ne soit incluse. Nous sommes en mesure de fournir au client un extrait de code qui s'accroche au filtre et contient l'ic?ne.
Discussion approfondie du système de crochet WordPress
à différentes étapes de l'exécution de WordPress, un grand nombre d'événements sont déclenchés et les fonctions do_actions()
et apply_filters()
PHP sont généralement utilisées. Ces événements peuvent être abonnés ou montés via add_action()
et add_filter()
.
Ce qui suit est un exemple d'action dans un plugin. Cette action se déclenche après avoir réussi à enregistrer un utilisateur dans mon plugin d'enregistrement d'utilisateur ProfilePress:
/** * Fires after a user registration is completed. * * @param int $form_id ID of the registration form. * @param mixed $user_data array of registered user info. * @param int $user_id ID of the registered user. */ do_action( 'pp_after_registration', $form_id, $user_data, $user_id );
Toutes les fonctions attachées à cette action sont traitées lors de l'exécution de WordPress.
the_content
dans WordPress Core est un exemple de crochet filtrant qui filtre le contenu de chaque message:
/** * Fires after a user registration is completed. * * @param int $form_id ID of the registration form. * @param mixed $user_data array of registered user info. * @param int $user_id ID of the registered user. */ do_action( 'pp_after_registration', $form_id, $user_data, $user_id );
Remarque:
Dans do_actions()
, le premier paramètre est le nom du crochet d'action, et les paramètres suivants sont des variables qui peuvent être utilisées pour s'accrocher à la fonction d'action.
Dans apply_filters()
, le premier paramètre est le nom du crochet de filtre, et le deuxième paramètre est les données ou la valeur que la fonction est attachée au filtre pour la modification ou l'application. Les paramètres suivants sont des variables / valeurs qui peuvent être utilisées pour se fixer au filtre.
Exemple de crochet d'action
Exemple # 1:
En utilisant l'action pp_after_registration
du plugin ProfilePress, en supposant que nous souhaitons implémenter une fonctionnalité, l'utilisateur recevra un message de bienvenue immédiatement après l'enregistrement (via l'hypothétique SMS Service Dolio). Notre crochet de fonction peut être comme ceci:
/** * Filter the post content. * * @since 0.71 * * @param string $content Content of the current post. */ $content = apply_filters( 'the_content', $content );Le troisième paramètre de
add_action
est la priorité de crochet, qui spécifie l'ordre d'exécution des fonctions attachées à pp_after_registration
Action. Laisser vider sera par défaut à 10. Le quatrième paramètre spécifie le nombre de paramètres que le crochet de fonction acceptera. Laisser vide sera par défaut à 1.
Exemple # 2:
WordPress contient les crochets d'action suivants: wp_head
et wp_footer
, qui sont tirés avant l'étiquette de tête frontale et la balise corporelle, respectivement.
Ces crochets peuvent être utilisés pour afficher les scripts et les données dans ces emplacements stratégiques.
(Le contenu suivant est similaire au texte d'origine. Pour éviter la duplication, les exemples restants et les conclusions du crochet d'action et du crochet filtrant sont omis ici)
(La partie FAQ est également omise pour des raisons de longueur)
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

Undress AI Tool
Images de déshabillage gratuites

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.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à 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)

Le moyen le plus efficace de prévenir le spam de commentaires est de l'identifier et de l'intercepter automatiquement par des moyens programmatiques. 1. Utilisez des mécanismes de code de vérification (tels que Googler captcha ou hcaptcha) pour distinguer efficacement les humains et les robots, en particulier adaptés aux sites Web publics; 2. Définissez des champs cachés (technologie de miel) et utilisez des robots pour remplir automatiquement les fonctionnalités pour identifier les commentaires du spam sans affecter l'expérience utilisateur; 3. Vérifiez la liste noire des mots clés du contenu des commentaires, filtrez les informations sur les spams par la correspondance des mots sensibles et faites attention à éviter les erreurs de jugement; 4. Jugez la fréquence et la source IP des commentaires, limitez le nombre de soumissions par unité de temps et établissez une liste noire; 5. Utilisez des services anti-spam tiers (comme Akismet, CloudFlare) pour améliorer la précision d'identification. Peut être basé sur le site Web

Lorsque vous développez des blocs Gutenberg, la méthode correcte des actifs d'Enqueue comprend: 1. Utilisez Register_Block_Type pour spécifier les chemins de chemin de l'éditor_script, editor_style et style; 2. Enregistrez les ressources via WP_register_Script et WP_register_style dans Functions.php ou plug-in, et définissez les dépendances et versions correctes; 3. Configurez l'outil de construction pour sortir le format du module approprié et assurez-vous que le chemin est cohérent; 4. Contr?lez la logique de chargement du style frontal via ADD_THEME_SUPPORT ou ENQUEUE_BLOCK_Assets pour s'assurer que la logique de chargement du style frontal est assurée.

La clé pour ajouter des règles de réécriture personnalisées dans WordPress est d'utiliser la fonction add_rewrite_rule et de vous assurer que les règles prennent effet correctement. 1. Utilisez add_rewrite_rule pour enregistrer la règle, le format est add_rewrite_rule ($ regex, $ redirect, $ after), où $ regex est une URL de correspondance d'expression régulière, $ redirect spécifie la requête réelle et $ après contr?le l'emplacement de la règle; 2. Les variables de requête personnalisées doivent être ajoutées via add_filter; 3. Après modification, les paramètres de liaison fixe doivent être rafra?chis; 4. Il est recommandé de placer la règle en ?haut? pour éviter les conflits; 5. Vous pouvez utiliser le plug-in pour afficher la règle actuelle pour plus de commodité

Robots.txt est crucial pour le référencement des sites Web WordPress et peut guider les moteurs de recherche pour craquer un comportement, éviter le contenu en double et améliorer l'efficacité. 1. Les chemins du système de bloc tels que / wp-admin / et / wp-incluses /, mais évitez de bloquer accidentellement le / les téléchargements / répertoire; 2. Ajouter des chemins de sitemap tels que le plan du site: https://yourdomain.com/sitemap.xml pour aider les moteurs de recherche à découvrir rapidement des cartes de site; 3. Limite / Page / et URL avec des paramètres pour réduire les déchets du robot, mais veillez à ne pas bloquer les pages d'archives importantes; 4. évitez les erreurs courantes telles que le blocage accidentellement de l'ensemble du site, le plug-in de cache affectant les mises à jour et l'ignorer la correspondance des terminaux et des sous-domaines mobiles.

WordPressRequireSAtleastPhp7.4, bien que 8.0orHigheReriSreComMendForBetterformanceAnDecurity.olderversionsLIVEL5

InspectorControls est un composant utilisé dans le développement de Gutenberg pour ajouter des commandes personnalisées dans la barre latérale droite. 1. Il appartient au package @ wordPress / Block-Editor. 2. Il est souvent utilisé avec Panelbody, TextControl et d'autres composants. 3. Lorsque vous l'utilisez, vous devez introduire et raisonnablement disposer des types de contr?le tels que des zones de texte, des sélections de traction, des commutateurs, des curseurs et des sélecteurs de couleurs dans edit.js. 4. Faites attention au regroupement des paramètres, gardez-les simple, soutenez l'internationalisation et optimisez les performances.

Pour introduire correctement des fichiers de style dans des thèmes ou des plugins WordPress, vous devez utiliser la fonction wp_enqueue_style (). 1. Utilisez wp_enqueue_style () pour enregistrer et charger le fichier CSS. La structure de base est wp_enqueue_style ($ handle, $ src, $ deps, $ ver, $ media), où $ handle est un identifiant unique, $ src est l'URL du fichier CSS, $ DEPS est le style de dépendance, $ ver est le numéro de version, et $ media est le type de support; 2. En pla?ant l'opération d'equare dans le fichier functions.php et en utilisant wp_enqueue_script

Il n'est pas compliqué d'ajouter des en-têtes de réponse de sécurité dans WordPress et peut être implémenté via la configuration du serveur, les plug-ins de sécurité ou CDN. 1. Ajouter des informations d'en-tête telles que les options de type X-Content, les Options X-Frame, etc. via des fichiers de configuration Apache ou Nginx; 2. Utilisez des plug-ins tels que WordFence et ItheMesSecurity pour simplifier les paramètres; 3. Utilisez les fonctions intégrées des plates-formes CDN telles que CloudFlare pour configurer les informations d'en-tête globales. Après la configuration, vous devez utiliser Securityheders.com ou Chromedevtools pour tester et vérifier pour assurer l'exactitude et obtenir au moins les scores de niveau A, tout en faisant attention à la sauvegarde et à la compréhension de l'activation
