add_theme_support()
add_theme_support() le dice a WordPress que el tema activo soporta una característica concreta. Algunas funcionalidades de WordPress están desactivadas por defecto y solo se activan cuando el tema las declara explícitamente.
¿Dónde se llama?
Siempre dentro del hook after_setup_theme, nunca directamente en el scope global.
Características más usadas
// Deja que WordPress gestione el <title> de la página
// Sin esto, hay que poner el título a mano en header.php
add_theme_support( 'title-tag' );
// Activa las imágenes destacadas (thumbnails)
add_theme_support( 'post-thumbnails' );
// Solo para ciertos tipos de post
add_theme_support( 'post-thumbnails', [ 'post', 'producto' ] );
// Logo personalizable desde Apariencia → Personalizar
add_theme_support( 'custom-logo' );
// Imagen de cabecera personalizable
add_theme_support( 'custom-header' );
// Fondo personalizable
add_theme_support( 'custom-background' );
// HTML5 semántico (muy recomendado)
add_theme_support( 'html5', [ 'search-form', 'gallery', 'caption', 'script', 'style' ] );
// Soporte para alineación ancha y completa en bloques Gutenberg
add_theme_support( 'align-wide' );
// Estilos del editor = frontend (evita diferencias visuales)
add_theme_support( 'editor-styles' );
// Post formats (aside, gallery, link, image, quote, video, audio)
add_theme_support( 'post-formats', [ 'aside', 'gallery', 'image', 'quote' ] );
Comprobar si una característica está activa
if ( current_theme_supports( 'post-thumbnails' ) ) {
// el tema soporta imágenes destacadas
the_post_thumbnail( 'large' );
}
Eliminar una característica
// En un tema hijo, para desactivar algo del tema padre
remove_theme_support( 'custom-background' );
