WordPress propose de nombreuses fonctionnalités qui restent invisibles tant qu’un thème ne s’engage pas explicitement à les prendre en charge : sans cette déclaration, même une fonctionnalité native comme l’image mise en avant peut simplement ne rien afficher, faute de code prévu pour l’exploiter.
Fonctionnement dans functions.php
La fonction add_theme_support(), appelée sur le hook after_setup_theme, active des fonctionnalités comme post-thumbnails (images mises en avant), title-tag (délégation de la balise <title> à WordPress), html5 (balisage moderne pour les formulaires de recherche et de commentaires) ou custom-logo (logo personnalisable).
Exemple de déclaration
add_action( 'after_setup_theme', function () {
add_theme_support( 'post-thumbnails' );
add_theme_support( 'title-tag' );
add_theme_support( 'custom-logo' );
} );
Pièges fréquents
- Oublier
add_theme_support( 'title-tag' )oblige à coder manuellement la balise<title>dans l’en-tête du thème, sous peine de doublon si les deux méthodes coexistent par erreur. - Certaines extensions (WooCommerce en tête) exigent une prise en charge explicite (
add_theme_support( 'woocommerce' )) pour que leurs gabarits s’intègrent correctement au design du thème actif. - Un thème bloc n’a pas besoin de toutes ces déclarations : plusieurs fonctionnalités équivalentes sont directement gérées par les réglages de
theme.jsonplutôt que paradd_theme_support().