L'essentiel en 4 points
- Un thème en blocs n'a rien à déclarer : Twenty Twenty-Five affiche « Supporte WooCommerce : Non déclaré » et tout fonctionne.
- Un thème classique doit déclarer add_theme_support( 'woocommerce' ), sinon WooCommerce ignore ses gabarits.
- Le thème classique du labo pèse 456 Kio sur une fiche produit, contre 772 pour le thème en blocs. Mais il n'a ni mini-panier ni fil d'Ariane.
- Même avec un thème classique, le panier et la commande d'une boutique récente restent des blocs.
1.1Ce que WooCommerce attend d'un thème en 2026
Il y a deux familles de thèmes WordPress, et WooCommerce ne les traite pas de la même façon.
Le thème en blocs, celui que WordPress pousse depuis plusieurs années, est fait de modèles en HTML (une page, un article, une archive) et d'un fichier theme.json pour les couleurs, les polices et les espacements. Tu le modifies dans l'éditeur de site. WooCommerce y ajoute ses propres modèles et ses blocs, et ça marche sans que le thème ait à le demander. Au labo, l'écran WooCommerce > État affichait, pour Twenty Twenty-Five : « Type de thème : Thème basé sur des blocs » et « Supporte WooCommerce : Non déclaré ». Et la boutique fonctionnait parfaitement.
Le thème classique est fait de fichiers PHP : header.php, footer.php, index.php, et un functions.php. WooCommerce y insère sa boutique à travers ses propres gabarits PHP, que le thème peut copier et modifier. Mais il faut le lui demander. Le guide du développeur de thèmes classiques de WooCommerce est clair : les surcharges de gabarits ne sont activées que si le thème déclare son support de WooCommerce. Sans cette déclaration, WooCommerce considère le thème comme non prévu pour lui et affiche la boutique dans un mode de compatibilité.
1.2Les deux thèmes du labo
Pour comparer pour de vrai, on a construit deux thèmes minimaux sur le labo du dossier WooCommerce, avec les mêmes quatre produits.
| Labo Boutique | Labo Classique | |
|---|---|---|
| Famille | thème en blocs | thème classique, en PHP |
| Fichiers | style.css, theme.json, 2 parties, 5 modèles | style.css, functions.php, header.php, footer.php, index.php, woocommerce.php, 2 gabarits surchargés |
| Déclaration WooCommerce | aucune | add_theme_support, et la galerie (zoom, lightbox, diaporama) |
| En-tête | navigation, compte client, mini-panier | trois liens texte |
| Police | celle du système | celle du système |
Les deux tiennent en quelques fichiers. On les construit pas à pas dans les chapitres suivants : le squelette du thème en blocs, son theme.json, les modèles de WooCommerce, puis le thème classique.
1.3Ce que voit le client
Même produit, même boutique, deux thèmes.


Le thème en blocs reprend les couleurs et la typographie de son theme.json jusque dans les boutons et les prix de WooCommerce. Le thème classique, lui, affiche les styles d'origine de WooCommerce : bouton violet, prix vert olive. Pour les changer, il faut écrire du CSS, ou désactiver ces styles et tout refaire.
1.4Le poids, face à Twenty Twenty-Five
| Page | Twenty Twenty-Five | Labo Boutique (blocs) | Labo Classique (PHP) |
|---|---|---|---|
| Accueil | 27 · 656 Kio | 26 · 588 Kio | 15 · 300 Kio |
| Boutique | 38 · 778 Kio | 37 · 712 Kio | 19 · 340 Kio |
| Fiche produit simple | 44 · 835 Kio | 43 · 772 Kio | 25 · 456 Kio |
| Fiche produit variable | 48 · 916 Kio | 47 · 854 Kio | 28 · 511 Kio |
| Panier vide | 87 · 2 957 Kio | 86 · 2 887 Kio | 81 · 2 688 Kio |
Nombre de requêtes · poids non compressé. Le thème classique du labo n'a ni mini-panier ni fil d'Ariane : la comparaison l'avantage.
Trois enseignements. Un thème en blocs minimal ne fait gagner que 60 à 70 Kio par page à Twenty Twenty-Five : l'essentiel du poids vient de WooCommerce, pas du thème. Le thème classique divise le poids par deux sur les pages de boutique, mais une partie de l'écart vient de ce qui lui manque. Et le panier, lui, pèse près de 3 Mio partout : c'est le bloc Panier, et on va voir pourquoi le thème classique n'y échappe pas.
1.5Le panier et la commande restent des blocs
C'est le point qui change le raisonnement. Depuis WooCommerce 8.3, sur une boutique récente, le panier et la commande sont des blocs placés dans le contenu des pages Panier et Validation de la commande. Ils ne viennent pas du thème. Avec le thème classique du labo, la page Panier affichait toujours le bloc Panier, et pas le gabarit PHP cart.php, même surchargé. On le démontre au chapitre sur le thème classique.
La documentation des modèles en blocs de WooCommerce va dans le même sens côté thèmes en blocs : les modèles du panier et de la commande servent à habiller la page (en-tête, mise en page, pied de page), mais les blocs Panier et Commande restent dans le contenu de la page.
On construit donc le thème en blocs. Premier fichier, premier piège : le squelette.
Sources
Historique de ce chapitre
- 19 octobre 2026 : première version, deux thèmes construits sur WooCommerce 11.2.1.

Co-fondateur de Kōeki · Consultant SEO et IA
Sébastien Grillot
Consultant SEO depuis 2009 : c'est ici, sur Inside da WeB, qu'il a monté sa première agence, spécialisée dans l'e-commerce sous WordPress. Il construit aujourd'hui ses propres outils, thèmes compris, avec l'IA.


