# Fonction de rappel

> Fonction passée en argument à une autre fonction pour être exécutée plus tard, souvent une fois une opération terminée ou un événement déclenché.

- Auteur : Clément Hadrot
- Publié le : 2026-09-25
- Mis à jour le : 2026-09-25
- URL : https://wpmoderne.dev.wordpress-developpement.fr/lexique/fonction-de-rappel/

Confier une tâche à quelqu'un en lui disant « préviens-moi quand c'est fini » : voilà le principe d'une fonction de rappel. Plutôt que d'attendre bêtement le résultat d'une opération, on transmet une fonction qui sera appelée au bon moment, avec le résultat en paramètre.

## Un usage omniprésent en JavaScript

Les callbacks servent à réagir à un événement (clic, chargement de page), à traiter le résultat d'une requête réseau, ou à s'exécuter après un délai avec `setTimeout`. Sur un site WordPress, un thème enrichi en JavaScript utilise couramment ce mécanisme : un script attend que le DOM soit prêt avant d'initialiser un carrousel, ou attend la réponse d'un appel à l'API REST de WordPress avant d'afficher des articles supplémentaires.

## Exemple

```
function chargerArticles(callback) {
  fetch('/wp-json/wp/v2/posts')
    .then(reponse => reponse.json())
    .then(donnees => callback(donnees));
}

chargerArticles(function(articles) {
  console.log(articles.length + ' articles reçus');
});
```

Ici, la fonction anonyme passée en second argument ne s'exécute qu'une fois les articles récupérés : elle « rappelle » le programme principal avec la donnée attendue.

## Pièges fréquents

- Empiler des callbacks imbriqués rend le code difficile à lire, un phénomène parfois surnommé « callback hell ». Les promesses ou `async`/`await` offrent une syntaxe plus lisible pour le même besoin.
- Un callback qui capture une variable de boucle sans fermeture correctement gérée peut recevoir une valeur inattendue au moment de son exécution différée.
- Oublier de vérifier qu'un argument est bien une fonction avant de l'invoquer provoque une erreur si un développeur passe autre chose par erreur.
