lunes, 26 Oct 2026

Recursos y herramientas exclusivas para expertos en diseño y desarrollo web

Explorar
BiblioWeb

Biblioweb.es

Todo sobre tecnología web

  • Inicio
  • WordPress
    WordPress
    • Todo sobre WordPress26
    • Plugins de WordPress16
    • Desarrollo web y plugins15
    Rendimiento y seguridad
    • Hosting y rendimiento8
    • Ciberseguridad web7
    • Solución de errores5
    Negocio e IA
    • IA y automatización10
    • WooCommerce y tiendas online6
    Lo último
    Restaurant Menu Widget — Plugin de WordPress27 Sep 2026JetStudio Bookings — Plugin de WordPress27 Sep 2026SC Heatmap — Plugin de WordPress27 Sep 2026
    Ver el blog completoHistorial de noticiasSobre nosotrosNewsletter semanal
  • Plugins de WordPress
    Fichas de plugins
    • WP Translate Master
    • Cart Tool Kit
    • SC Heatmap
    • JetStudio Bookings
    • Restaurant Menu Widget
    • WP SEO Pro
    • Rank Math SEO en 2026
    • WP Rocket
    • WPCode
    • AI Engine para WordPress
    Comparativas y guías
    • Los mejores plugins SEO para WordPress
    • Los mejores plugins de IA para WordPress
    • Los mejores plugins de reservas para WordPress
    • WordPress multiidioma
    • Cómo crear un formulario de contacto en WordPress
    • Stripe o PayPal
    Por temática
    • Plugins de WordPress16
    • WooCommerce y tiendas online6
    • Desarrollo web y plugins15
    • IA y automatización10
    • Hosting y rendimiento8
    BibliotecaPluginteca

    Los plugins de WordPress que desarrollamos: qué hace cada uno, cómo se ve en acción y dónde conseguirlo.

    Entrar en la Pluginteca
    Toda la categoría Plugins de WordPressHerramientas gratis
  • Herramientas
    Herramientas gratis, sin registro y desde el navegador
    Generador de contraseñasContraseñas largas y aleatorias sin salir del navegador.Generador de QRCódigos QR en PNG de alta resolución, sin caducidad.Contador de palabrasPalabras, caracteres y tiempo de lectura en vivo.Formateador JSONFormatea, valida y localiza el error exacto.Conversor a WebPPNG, JPG y PDF a WebP para que la web cargue…PDF a WebPCada página del PDF, en una imagen ligera.Comprobador de emailsSintaxis, correos temporales y registros MX.Compresor de vídeoBaja el peso del vídeo sin subirlo a ningún servidor.Vídeo a MP3Extrae el audio de un vídeo en un par de clics.Firmas de emailFirma en HTML lista para Gmail y Outlook.
    También te sirveHerramientas externas que merecen la pena

    DNS Checker, Query Monitor, Local WP y el resto del kit que usamos a diario, con para qué sirve cada una.

    Ver la selección
    Todas las herramientasPlugintecaRecíbelas por correo
  • Pluginteca
  • Español ✓
  • English
  • 🇨🇳 中文(简体)
  • Français
  • Deutsch
  • Italiano
Newsletter
  • WordPress
  • Plugins de WordPress
  • WooCommerce
  • IA para WordPress
  • Seguridad
  • Herramientas gratis
  • Ver todo
BiblioWebBiblioWeb
Redimensionador de fuentesAa
  • WordPress
  • Plugins
  • WooCommerce
  • Errores
  • Herramientas
Buscar
  • Inicio
  • WordPress
    • Todo sobre WordPress
    • Plugins de WordPress
    • Desarrollo Web y Plugins
    • IA y Automatización web
    • WooCommerce
    • Hosting y Rendimiento Web
    • Ciberseguridad y Seguridad Web
    • Solución de errores web
  • Plugins de WordPress
    • Rank Math SEO
    • AI Engine
    • WP Rocket
    • WPCode
    • WP Translate Master
    • Cart Tool Kit
    • SC Heatmap
    • JetStudio Bookings
    • Restaurant Menu Widget
    • WP SEO Pro
  • Herramientas
    • Generador de Contraseñas
    • Generador de Código QR
    • Contador de Palabras
    • Formateador JSON
    • Conversor Imagenes a WebP
    • Comprobador de Correos Electrónicos
    • Compresor de Vídeo para Web
    • Generador de Firmas de Email
    • Convertidor de Vídeo a MP3
    • Conversor de PDF a WebP
  • Pluginteca
  • Blog
    • Español ✓
    • English
    • 🇨🇳 中文(简体)
    • Français
    • Deutsch
    • Italiano
Síguenos
© 2026 BiblioWeb — Todos los derechos reservados.
Portada » Blog » Qué es un child theme en WordPress y cómo crearlo
Desarrollo Web y Plugins

Qué es un child theme en WordPress y cómo crearlo

Adrián Alcalá
Actualizado: 08/08/2026 21:10
Por Adrián Alcalá
Compartir
14 min de lectura
Qué es un child theme de WordPress y cómo crearlo
COMPARTIR

Si alguna vez has personalizado tu tema y has visto cómo una actualización borraba todos tus cambios, ya sabes por qué existe el child theme WordPress (o tema hijo). Un child theme es un tema que hereda todo el diseño y la funcionalidad de otro tema (el padre) y te permite modificar solo lo que quieras cambiar: unos estilos, una plantilla, unas funciones. La gracia del invento es que tus cambios viven en una carpeta separada, de modo que cuando el tema padre se actualiza (y debe actualizarse, por seguridad y compatibilidad), tus personalizaciones permanecen intactas. Es el mecanismo oficial de WordPress para personalizar temas de terceros, y crearlo cuesta literalmente dos archivos y cinco minutos. En esta guía vemos qué es exactamente un tema hijo, cuándo lo necesitas de verdad (y cuándo no), cómo crearlo paso a paso con el código completo, cómo funciona la jerarquía de plantillas que lo hace posible y los errores típicos que conviene esquivar desde el principio.

Índice
Qué es un child theme y cómo funciona la herenciaCuándo necesitas un tema hijo (y cuándo no)Cómo crear un child theme WordPress paso a pasoQué personalizar desde el tema hijo: ejemplos útilesErrores comunes con los child themesChild themes y temas de bloques: el matiz de 2026Preguntas frecuentesConclusión

Qué es un child theme y cómo funciona la herencia

Un tema hijo es una carpeta dentro de wp-content/themes que declara, mediante una línea en su hoja de estilos, que su padre es otro tema instalado. A partir de esa declaración, WordPress aplica una regla simple y potente:

  • Para las plantillas PHP: si el archivo existe en el hijo, se usa el del hijo; si no, se usa el del padre. Copiar header.php del padre al hijo y editarlo ahí sustituye la cabecera sin tocar el original.
  • Para los estilos y funciones: no se sustituyen, se suman. El functions.php del hijo se carga además del padre (y antes), y el CSS del hijo se encola junto al del padre para sobrescribir reglas concretas.

El resultado práctico: el tema padre sigue siendo el motor (y puede actualizarse con normalidad), mientras el hijo actúa como una capa fina con tus diferencias. Actualizar el padre nunca toca la carpeta del hijo, así que tus cambios sobreviven a cualquier actualización.

Cuándo necesitas un tema hijo (y cuándo no)

No toda personalización justifica un child theme. La línea divisoria es clara:

Sí necesitas un child theme si…

  • Vas a editar archivos del tema: plantillas PHP, o CSS más allá de unos pocos ajustes.
  • Quieres añadir funciones ligadas al diseño (registrar un menú extra, un área de widgets, tamaños de imagen).
  • Mantienes webs de clientes donde las actualizaciones deben poder aplicarse sin miedo.

No lo necesitas si…

  • Solo quieres unos retoques de CSS: el campo «CSS adicional» del personalizador (o de los estilos globales en temas de bloques) los guarda en la base de datos, a salvo de actualizaciones.
  • Tu cambio es funcionalidad pura (un shortcode, un ajuste de WooCommerce, un snippet de seguimiento): eso pertenece a un plugin o a un gestor de snippets como WPCode, porque debe sobrevivir también a un cambio de tema.
  • Usas un tema de bloques moderno y todos tus cambios caben en el editor del sitio: las modificaciones hechas ahí ya se guardan en la base de datos.

La regla de oro: diseño que toca archivos del tema, al child theme; funcionalidad independiente del diseño, a un plugin. Y si estás eligiendo tema todavía, hazlo pensando también en esto: un buen tema bien mantenido merece la pequeña inversión de crearle un hijo antes de personalizar. En nuestra guía sobre cómo elegir el tema perfecto para tu web WordPress repasamos qué señales distinguen a un tema sólido.

Cómo crear un child theme WordPress paso a paso

Vamos a crear un tema hijo para un tema padre de ejemplo; usaremos Astra, pero el proceso es idéntico para cualquier tema clásico: solo cambia el identificador del padre. Necesitas acceso a los archivos (SFTP o el gestor del hosting) o, en local, tu explorador de archivos.

También te podría interesar

Cómo instalar y configurar Yoast SEO en WordPress
Herramientas internas para agencias web: cuándo y cómo crearlas
Los 5 plugins esenciales de WordPress para principiantes
Shortcodes de WordPress: qué son y cómo crear los tuyos

Paso 1: crea la carpeta

Dentro de wp-content/themes, crea una carpeta nueva. Por convención se usa el nombre del padre con el sufijo -child:

wp-content/themes/astra-child/
├── style.css
└── functions.php

Paso 2: crea style.css con la cabecera

El archivo style.css es obligatorio y su cabecera de comentario es lo que convierte la carpeta en un tema. La línea crítica es Template: debe contener el nombre exacto de la carpeta del tema padre (sensible a mayúsculas):

/*
Theme Name:   Astra Child
Theme URI:    https://biblioweb.es/
Description:  Tema hijo de Astra para personalizaciones seguras
Author:       BiblioWeb
Author URI:   https://biblioweb.es/
Template:     astra
Version:      1.0.0
Text Domain:  astra-child
*/

/* A partir de aquí, tus estilos personalizados. */

Paso 3: encola los estilos en functions.php

Al contrario de lo que se hacía antiguamente (con @import, hoy desaconsejado por lento), la hoja del padre se carga con un encolado correcto desde functions.php:

<?php
/**
 * Encolar la hoja de estilos del tema padre y la del hijo.
 */
add_action( 'wp_enqueue_scripts', 'astra_child_enqueue_styles' );
function astra_child_enqueue_styles() {
    // Estilos del padre.
    wp_enqueue_style(
        'astra-parent-style',
        get_template_directory_uri() . '/style.css',
        array(),
        wp_get_theme( get_template() )->get( 'Version' )
    );
    // Estilos del hijo, cargados después para poder sobrescribir.
    wp_enqueue_style(
        'astra-child-style',
        get_stylesheet_directory_uri() . '/style.css',
        array( 'astra-parent-style' ),
        wp_get_theme()->get( 'Version' )
    );
}

Fíjate en el detalle de las dos funciones gemelas: get_template_directory_uri() apunta siempre al padre y get_stylesheet_directory_uri() al hijo. Confundirlas es el origen de la mitad de los problemas con temas hijos. Nota: algunos temas (Astra entre ellos) ya encolan sus estilos de forma que el hijo se carga solo; si ves los estilos duplicados, simplifica el encolado dejando solo la hoja del hijo con la dependencia adecuada.

Paso 4: activa y comprueba

Ve a Apariencia → Temas: verás «Astra Child» como un tema más. Actívalo. La web debe verse exactamente igual que con el padre; si se ve sin estilos, revisa el valor de Template y el encolado. Con esto, tu child theme WordPress ya está activo y listo para recibir personalizaciones. Opcionalmente, añade una imagen screenshot.png (1200×900) a la carpeta del hijo para que luzca miniatura en el selector.

Paso 5 (opcional): sobrescribe plantillas

Para modificar una plantilla del padre, cópiala al hijo respetando su ruta relativa y edítala allí. Por ejemplo, para personalizar la plantilla de entradas individuales, copia single.php del padre a la raíz del hijo; para una plantilla dentro de subcarpetas (frecuente en WooCommerce), respeta la estructura: woocommerce/single-product.php. WordPress usará tu copia automáticamente.

Qué personalizar desde el tema hijo: ejemplos útiles

Con la estructura montada, el hijo se convierte en tu espacio de trabajo seguro. Algunos usos habituales:

Estilos propios

/* En style.css del hijo */
.site-title {
    font-size: 2.2rem;
    letter-spacing: -0.02em;
}
.entry-content a {
    text-decoration: underline;
    text-underline-offset: 3px;
}

Funciones ligadas al diseño

// En functions.php del hijo: registrar un menú adicional.
add_action( 'after_setup_theme', 'astra_child_menus' );
function astra_child_menus() {
    register_nav_menu( 'menu-legal', 'Menú legal del pie' );
}

// Un tamaño de imagen a medida para tarjetas del blog.
add_action( 'after_setup_theme', 'astra_child_image_sizes' );
function astra_child_image_sizes() {
    add_image_size( 'tarjeta-blog', 600, 400, true );
}

Recuerda el criterio de la sección anterior: si el snippet no depende del diseño (analítica, redirecciones, ajustes de comportamiento), no lo pongas en el functions.php del hijo; llévalo a un plugin propio o a un gestor de snippets, para que sobreviva a un futuro cambio de tema. Muchos de los plugins esenciales de WordPress existen precisamente para no tener que meter de todo en el tema.

Errores comunes con los child themes

  • Template mal escrito. Si Template: astra no coincide exactamente con el nombre de la carpeta del padre, WordPress mostrará el hijo como «roto». Es el fallo número uno.
  • Usar @import en el CSS. Funciona, pero serializa las descargas y penaliza la velocidad. Encola siempre desde functions.php.
  • Copiar plantillas de más. Cada plantilla copiada al hijo deja de recibir las mejoras que el padre incorpore en sus actualizaciones. Copia solo lo que realmente vayas a modificar, y revisa tus copias cuando el padre publique cambios grandes.
  • Confundir functions.php. El del hijo no sustituye al del padre: ambos se cargan. Si declaras una función con el mismo nombre que una del padre no «la sobrescribes»: provocas un error fatal, salvo que el padre la haya envuelto en function_exists().
  • Crear el hijo después de personalizar el padre. El orden correcto es: instalar padre, crear hijo, activar hijo, y solo entonces personalizar. Los ajustes del personalizador se guardan por tema, así que al activar el hijo puede tocar reconfigurar algunas opciones (o migrarlas con un plugin de exportación de ajustes).
  • Editar sin copia de seguridad. Un error de sintaxis PHP en functions.php tumba la web. Edita por SFTP (nunca desde el editor de archivos del escritorio en producción) y ten copia reciente para deshacer rápido.

Child themes y temas de bloques: el matiz de 2026

Con los temas de bloques (Full Site Editing), buena parte de la personalización clásica (cabeceras, pies, plantillas) se hace visualmente en el editor del sitio y se guarda en la base de datos, no en archivos. Eso reduce los casos en que un child theme es imprescindible, pero no lo jubila: sigue siendo la vía correcta para añadir CSS estructurado, modificar theme.json (la configuración de estilos globales del tema, que el hijo también puede sobrescribir), registrar patrones propios o tocar plantillas HTML del padre. El mecanismo de herencia funciona igual: mismo style.css con su Template, y las plantillas del hijo (en la carpeta templates/) tienen prioridad sobre las del padre. La referencia completa está en el manual oficial de child themes de developer.wordpress.org.

Preguntas frecuentes

¿Un child theme afecta al rendimiento de WordPress?

El impacto es despreciable: una hoja de estilos adicional (a menudo minúscula) y un functions.php extra. Bien construido, con el encolado correcto y sin @import, un tema hijo no ralentiza la web de forma medible.

¿Puedo crear un child theme de un child theme?

No. WordPress solo admite un nivel de herencia: un hijo no puede ser padre de otro tema. Si necesitas variantes, trabaja con un solo hijo bien organizado o valora un enfoque distinto (plantillas propias, plugin de personalizaciones).

¿Qué pasa si cambio de tema padre?

El hijo está ligado a su padre concreto: si activas otro tema, el hijo deja de funcionar tal cual. Los estilos y plantillas rara vez son trasladables (dependen de las clases y estructura del padre), pero las funciones independientes del diseño sí, otro motivo para mantenerlas en un plugin y no en el tema.

¿Hay plugins que creen el child theme por mí?

Sí, plugins como Child Theme Configurator generan la estructura con un clic e incluso migran los ajustes del personalizador del padre al hijo. Son una opción legítima si no quieres tocar archivos, aunque como has visto el proceso manual son dos archivos y cinco minutos, y entenderlo te servirá cada vez que algo no cuadre.

Conclusión

El child theme WordPress es una de esas piezas pequeñas que definen la diferencia entre personalizar bien y personalizar con fecha de caducidad. Dos archivos (style.css con su cabecera y functions.php con el encolado) bastan para separar tus cambios del tema original y blindarlos frente a actualizaciones. Las reglas para no equivocarse caben en tres líneas: crea el hijo antes de personalizar, copia al hijo solo las plantillas que de verdad modifiques, y reserva el functions.php del tema para funciones de diseño, dejando la funcionalidad general en plugins. Si tu web usa un tema de terceros y tienes pensado tocar una sola línea de sus archivos, no lo dudes: monta el tema hijo hoy. Es la inversión de cinco minutos más rentable del ecosistema WordPress.

Compartir este artículo
Correo electrónico Copiar enlace Imprimir
PorAdrián Alcalá
Síguele:
Adrián Alcalá es desarrollador WordPress y consultor SEO, autor del plugin WP Translate y creador de BiblioWeb. Desde aquí comparte guías, tutoriales y herramientas gratuitas para quienes crean, optimizan y posicionan páginas web. Lleva años ayudando a negocios de toda España a sacar el máximo partido a WordPress, y todo lo que publica está probado en proyectos reales.
Artículo anterior Guía del editor de bloques Gutenberg Guía del editor de bloques de WordPress (Gutenberg)
Artículo siguiente Hooks de WordPress: actions y filters explicados Hooks de WordPress: qué son los actions y filters
Ilustración del plugin Restaurant Menu Widget: carta de restaurante con platos y precios editables en Elementor
Restaurant Menu Widget — Plugin de WordPress
Plugins de WordPress
Ilustración del plugin JetStudio Bookings: formulario de citas por pasos con calendario y bandeja de solicitudes
JetStudio Bookings — Plugin de WordPress
Plugins de WordPress
Ilustración del plugin SC Heatmap: mapa de calor de clics y scroll sobre una web, con los datos en tu servidor
SC Heatmap — Plugin de WordPress
Plugins de WordPress
Accesibilidad web en WordPress con IA
Accesibilidad web en WordPress: auditarla con IA en una tarde
IA & Automatización web

También te puede interesar

Diseñar Web WordPress - Diseña tu Web PRO en WordPress: El Tema Perfecto para un Impacto Brutal (y trucos IA que te volarán
Desarrollo Web y Plugins

Cómo elegir el tema perfecto para diseñar tu web en WordPress

28/09/2026
Conectar Google Sheets con WordPress
Desarrollo Web y Plugins

Cómo conectar Google Sheets con WordPress

24/08/2026
Hooks de WordPress: actions y filters explicados
Desarrollo Web y Plugins

Hooks de WordPress: qué son los actions y filters

08/08/2026
La REST API de WordPress: qué es y cómo usarla
Desarrollo Web y Plugins

La REST API de WordPress: qué es y cómo usarla

28/09/2026
Mostrar más
  • Temas:
  • WordPress
  • Plugins de WordPress
  • Desarrollo Web y Plugins
  • IA & Automatización web
  • Hosting & Rendimiento Web
  • Ciberseguridad y Seguridad Web
  • WooCommerce
  • Solución de problemas y errores web
BiblioWeb

Biblioweb.es

Actualidad de tecnología web

Información en la que puedes confiar: guías y soluciones prácticas de tecnología web — WordPress, plugins, ciberseguridad, hosting, rendimiento y solución de errores.

Rss

Enlaces de interés

  • Sobre nosotros
  • Contacto
  • Herramientas gratuitas
  • Pluginteca

Recibe nuestras nuevas guías de WordPress en tu correo. Suscríbete a la newsletter.

Legal

  • Aviso Legal
  • Términos y Condiciones
  • Política de cookies
  • Política de Privacidad

Últimas novedades

Ilustración del plugin Restaurant Menu Widget: carta de restaurante con platos y precios editables en Elementor

Restaurant Menu Widget — Plugin de WordPress

27/09/2026
Seguir leyendo
Ilustración del plugin JetStudio Bookings: formulario de citas por pasos con calendario y bandeja de solicitudes

JetStudio Bookings — Plugin de WordPress

27/09/2026
Seguir leyendo

© 2026 BiblioWeb — Todos los derechos reservados.

Gestionar consentimiento
Utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. Lo hacemos para mejorar la experiencia de navegación y para mostrar anuncios (no) personalizados. El consentimiento a estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o los ID's únicos en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.
Funcional Siempre activo
El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que se utiliza exclusivamente con fines estadísticos anónimos. Sin un requerimiento, el cumplimiento voluntario por parte de tu proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarte.
Marketing
El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en una web o en varias web con fines de marketing similares.
  • Administrar opciones
  • Gestionar los servicios
  • Gestionar {vendor_count} proveedores
  • Leer más sobre estos propósitos
Ver preferencias
  • {title}
  • {title}
  • {title}
Accede a BiblioWeb
Usuario o correo electrónico
Contraseña

¿Has olvidado tu contraseña?