# Bloc dynamique

> Un bloc dynamique ne sauvegarde pas de HTML figé dans l'article : son affichage sur le site est recalculé côté serveur en PHP à chaque chargement de page.

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

Certains contenus n'ont aucun sens s'ils restent figés au moment de l'écriture : le nombre de commentaires d'un article, la date du jour, ou la liste des articles les plus récents changent en permanence. Pour ces cas, un bloc statique classique, qui grave son rendu dans le contenu sauvegardé, ne convient pas. Le bloc dynamique inverse la logique : sa fonction `save` ne renvoie rien (ou un simple espace réservé), et c'est une fonction PHP exécutée à chaque affichage qui produit le HTML final à partir des attributs stockés.

## Fonctionnement dans WordPress

Côté PHP, le bloc s'enregistre avec `register_block_type()` en précisant un `render_callback` (ou, en PHP moderne, un fichier `render.php` référencé depuis `block.json`) qui reçoit les attributs du bloc et le contenu des éventuels blocs internes, et retourne le HTML à afficher. Le bloc Boucle de requête, le bloc Dernier article ou tout bloc affichant des données changeantes reposent sur ce mécanisme.

## Exemple

```
// render.php
$compte = wp_count_comments( get_the_ID() );
echo '<p>' . esc_html( $compte->approved ) . ' commentaires</p>';
```

## À ne pas confondre avec

- Le bloc statique, dont le HTML est déjà écrit dans la base de données et ne change plus une fois sauvegardé, même si les données source évoluent ensuite.
- L'API d'interactivité, qui gère l'interactivité *après* le rendu côté serveur, côté navigateur, alors que le rendu côté serveur détermine le HTML de départ envoyé au visiteur.
- Un bloc statique affichant un contenu qui semble variable en apparence (une image mise en avant par exemple) mais qui, en réalité, ne référence qu'un identifiant fixe stocké dans ses attributs.
