Maison >Tutoriel CMS >WordPresse >Comment utiliser Ajax dans WordPress - un exemple du monde réel

Comment utiliser Ajax dans WordPress - un exemple du monde réel

Lisa Kudrow
Lisa Kudroworiginal
2025-02-10 15:19:07254parcourir

Cet article montre comment utiliser Ajax dans WordPress pour créer un plugin "lire plus tard". Le plugin ajoute un lien sous chaque message permettant aux utilisateurs connectés de enregistrer des publications pour la lecture ultérieure. Un widget affiche ensuite ces messages enregistrés. Le tutoriel met l'accent sur les pratiques de codage sécurisées.

How to Use Ajax in WordPress - a Real World Example

Concepts clés:

  • admin-ajax.php: Ce fichier WordPress de base gère les demandes AJAX, assurant la sécurité et la compatibilité.
  • wp_ajax_ Crochet: utilisez ce crochet pour enregistrer les fonctions personnalisées Traitement des demandes AJAX.
  • SCRIPTS ET STYLES ENQUESTEURS: Enregistrer et enterrer correctement JavaScript et CSS à l'aide de fonctions WordPress.
  • Vérification non -ce: Essentiel pour sécuriser les appels AJAX contre l'accès non autorisé.
  • Mises à jour de l'interface utilisateur dynamique: ajax permet des mises à jour de contenu lisses et rapides sans rechargement de page.

Fonctionnalité du plugin:

Le plugin "Lire plus tard" effectue ces actions:

  1. ajoute un lien "lire plus tard" sous chaque article de blog.
  2. En cliquant, l'ID de message est enregistré dans les métadonnées de l'utilisateur (sans rafraîchissement de page).
  3. Un widget affiche les messages enregistrés.

Étapes de développement du plugin:

  1. Structure du répertoire: Créer un dossier de plugin (read-me-later) avec des sous-dossiers pour js et css, et fichiers: read-me-later.php, widget.php, read-me-later.js, read-me-later.css .

  2. read-me-later.php (En-tête du plugin et classe): L'en-tête du plugin l'identifie sur WordPress. Une classe ReadMeLater résume la fonctionnalité du plugin.

  3. SCRIPTS ET STYLES ENQUESTEURS: La classe ReadMeLater comprend des méthodes pour enregistrer et mettre en place les fichiers read-me-later.js et read-me-later.css à l'aide de crochets WordPress (plugins_loaded).

  4. Ajouter le lien "Lire-moi plus tard": Une fonction (rml_button) ajoute le lien vers le contenu du post et l'extrait, uniquement visible pour les utilisateurs connectés. Cela utilise des filtres WordPress (the_content, the_excerpt).

  5. Définition de l'URL AJAX: wp_localize_script rend l'URL admin-ajax.php disponible pour JavaScript.

  6. javascript (read-me-later.js): Le javascript gère le lien cliquez, envoie la demande ajax à admin-ajax.php et cache le lien après une sauvegarde réussie.

  7. AJAX Action Hook (wp_ajax_read_me_later): Ce crochet dans read-me-later.php connecte la demande ajax à la fonction read_me_later.

  8. read_me_later Fonction: Cette fonction enregistre l'ID Post dans les métadonnées de l'utilisateur à l'aide de update_user_meta. Il récupère et affiche également les messages enregistrés en utilisant get_posts. La fonction utilise die() pour assurer une sortie Ajax appropriée.

  9. widget (widget.php): Un widget personnalisé (RML_Widget) étend WP_Widget pour afficher les messages enregistrés. Il comprend des méthodes pour le formulaire, la mise à jour et l'affichage du widget.

  10. sécuriser les appels ajax: La vérification nonce est implémentée en utilisant wp_create_nonce en javascript et check_ajax_referer dans la fonction PHP pour empêcher les demandes non autorisées.

How to Use Ajax in WordPress - a Real World Example

Conclusion: Ce tutoriel fournit un exemple pratique de l'utilisation de l'AJAX en toute sécurité et efficacement dans un plugin WordPress. N'oubliez pas de s'adapter et de développer cette fondation pour créer des plugins plus complexes et riches en fonctionnalités. L'utilisation de crochets et de fonctions WordPress assure la compatibilité et la maintenabilité.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn