¿Cómo crear un child theme en WordPress?
¡Hola! Soy tu técnico de soporte amigable. ¿Estás listo para aprender a personalizar tu WordPress como un profesional sin miedo a perder todo tu trabajo? Hoy te voy a explicar paso a paso cómo crear un child theme WordPress (o tema hijo), una técnica fundamental para mantener tus cambios seguros cuando actualizas el tema principal.
Imagina que tienes un tema padre que te encanta, pero quieres cambiarle el color del encabezado, añadir un botón personalizado o modificar el pie de página. Si lo haces directamente en el tema padre, cuando ese tema se actualice (por seguridad o nuevas funciones), ¡todos tus cambios se borrarán! Un child theme es como una capa protectora: hereda todo del tema padre, pero tú solo modificas lo que necesitas, y las actualizaciones no afectan tus personalizaciones.
En este artículo, te guiaré desde cero, con un tono muy sencillo y práctico. No necesitas ser programador, solo seguir los pasos con calma. Al final, tendrás un child theme funcional y sabrás cómo usarlo para personalizar tu web sin estrés.
¿Qué es un Child Theme y por qué es esencial?
Un child theme WordPress es un tema que hereda todas las funcionalidades, estilos y plantillas de otro tema llamado "tema padre". Piensa en el tema padre como una casa ya construida. El child theme es como una reforma que haces en el interior: puedes cambiar la pintura, los muebles o la distribución de algunas habitaciones, pero la estructura principal (los cimientos, el techo) sigue siendo del padre.
¿Por qué es tan importante?
- Seguridad ante actualizaciones: Cuando el desarrollador del tema padre lanza una actualización (por ejemplo, para corregir vulnerabilidades), si has modificado archivos directamente en el tema padre, esos cambios se sobrescriben. Con un child theme, tus modificaciones quedan intactas porque están en una carpeta separada.
- Personalización sin límites: Puedes modificar CSS, PHP, plantillas (como header.php, footer.php) y hasta añadir funciones nuevas sin tocar el tema original.
- Rendimiento y mantenimiento: Al mantener el tema padre limpio, las actualizaciones son más rápidas y seguras. Además, si un día quieres cambiar de tema, tu child theme puede adaptarse más fácilmente.
- Aprendizaje progresivo: Es la puerta de entrada a la personalización avanzada de WordPress. Empiezas con cambios pequeños y luego puedes ir añadiendo más complejidad.
¿Cuándo NO necesitas un child theme? Si solo vas a usar la personalización que ofrece el personalizador de WordPress (Apariencia > Personalizar) o plugins de page builder como Elementor, no es estrictamente necesario, porque esos cambios se guardan en la base de datos. Pero si tocas archivos de código, sí.
Requisitos previos antes de empezar
Antes de ponerte manos a la obra, asegúrate de tener:
- Acceso a tu hosting: Puedes usar un cliente FTP (como FileZilla) o el administrador de archivos de tu panel de control (por ejemplo, cPanel o Syspanel – recuerda, el puerto de acceso es el 2106).
- Un tema padre instalado y activo: Por ejemplo, Twenty Twenty-Four, Astra, GeneratePress o cualquier otro. No importa cuál, el proceso es similar.
- Editor de texto plano: Usa Notepad++, Sublime Text, Visual Studio Code o incluso el bloc de notas de Windows. Evita procesadores de texto como Word porque añaden formato oculto.
- Conexión a internet estable para descargar archivos si es necesario.
[INFO] Si usas un hosting con Syspanel, el puerto de acceso es el 2106. Por ejemplo:
tu-dominio.com:2106. Allí encontrarás el administrador de archivos donde puedes crear carpetas y subir archivos sin necesidad de FTP.
Paso a paso: Cómo crear un child theme WordPress
Vamos a crear un child theme manualmente. Es más sencillo de lo que parece. Te mostraré dos métodos: el manual (recomendado para aprender) y el automático con un plugin (para los que quieren ir más rápido).
Método 1: Crear un child theme manualmente (recomendado)
Este método te da control total y no depende de plugins. Sigue estos pasos:
1. Crear una carpeta para el child theme
Accede a la carpeta de temas de WordPress. Normalmente está en: wp-content/themes/.
- Si usas Syspanel, ve a "Administrador de archivos" y navega hasta
public_html/wp-content/themes/. - Si usas FTP, conéctate y ve a esa misma ruta.
Dentro de themes, crea una nueva carpeta. Ponle un nombre descriptivo, por ejemplo: twenty-twenty-four-child (si tu tema padre se llama twentytwentyfour). La convención es usar el nombre del padre seguido de -child.
2. Crear el archivo style.css
Este es el archivo más importante. WordPress lo lee para identificar el tema. Dentro de tu nueva carpeta, crea un archivo llamado style.css (con minúsculas y sin espacios). Ábrelo con tu editor de texto y pega este contenido:
/*
Theme Name: Twenty Twenty-Four Child
Theme URI: http://ejemplo.com/twenty-twenty-four-child/
Description: Tema hijo de Twenty Twenty-Four
Author: Tu Nombre
Author URI: http://ejemplo.com
Template: twentytwentyfour
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
Text Domain: twenty-twenty-four-child
*/
Explicación de las líneas clave:
Theme Name: El nombre que quieras para tu child theme.Template: MUY IMPORTANTE. Debe ser exactamente el nombre de la carpeta del tema padre. En este caso,twentytwentyfour(sin espacios, tal cual está enwp-content/themes/). Si te equivocas, WordPress no lo reconocerá.Text Domain: Normalmente se usa el mismo que el nombre del tema, pero con guiones.
Guarda el archivo.
3. Crear el archivo functions.php
Este archivo es opcional pero muy recomendado. Sirve para encolar (cargar) los estilos del tema padre y del hijo. Crea otro archivo llamado functions.php dentro de la misma carpeta y pega esto:
<?php
function child_enqueue_styles() {
// Cargar el estilo del tema padre
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
// Cargar el estilo del tema hijo (depende del padre)
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array( 'parent-style' ), wp_get_theme()->get('Version') );
}
add_action( 'wp_enqueue_scripts', 'child_enqueue_styles' );
?>
¿Qué hace este código? Le dice a WordPress que primero cargue el CSS del tema padre y luego el del hijo. Así, si en el hijo pones reglas CSS, estas sobrescribirán a las del padre (porque se cargan después). Sin esto, tu child theme no heredaría los estilos visuales del padre.
Guarda el archivo.
4. Activar el child theme
Ve a tu panel de WordPress: Apariencia > Temas. Verás tu nuevo child theme listado. Actívalo como cualquier otro tema.
[TIP] Si no ves el tema, revisa que el nombre de la carpeta
Templateen elstyle.csscoincida exactamente con la carpeta del tema padre. También asegúrate de que el tema padre esté instalado (no es necesario que esté activo, pero sí instalado).
¡Felicidades! Ya tienes tu child theme WordPress funcionando. Ahora, cualquier cambio que hagas en los archivos de la carpeta del hijo se mantendrá incluso si actualizas el tema padre.
Método 2: Usar un plugin (más rápido)
Si prefieres no tocar código, existen plugins que crean el child theme automáticamente. Uno de los más populares es Child Theme Configurator.
- Instala y activa el plugin desde Plugins > Añadir nuevo.
- Ve a Herramientas > Child Themes.
- Selecciona el tema padre de la lista.
- Dale un nombre a tu child theme.
- Marca la opción "Copy menus, widgets and other customizer settings" si quieres mantener la configuración actual.
- Haz clic en "Create Child Theme".
- Actívalo.
El plugin crea los archivos necesarios y los encola. Es muy útil para principiantes, pero te recomiendo que al menos entiendas qué hace, por si luego necesitas ajustar algo manualmente.
[WARNING] Algunos plugins de creación de child themes pueden generar archivos con errores de sintaxis. Siempre revisa que el
functions.phptenga el código correcto. Si tu web se queda en blanco, desactiva el child theme desde FTP renombrando la carpeta.
Cómo personalizar tu child theme sin perder cambios
Una vez activo, puedes empezar a personalizar WordPress sin perder cambios. Aquí te doy ejemplos prácticos:
Modificar CSS (estilos)
Agrega reglas CSS al final del archivo style.css de tu child theme. Por ejemplo, para cambiar el color del encabezado a azul:
.site-header {
background-color: #0073aa !important;
}
Guarda y recarga tu web. Verás el cambio. Como el CSS del hijo se carga después del padre, tus reglas tienen prioridad.
Modificar una plantilla PHP
Si quieres cambiar, por ejemplo, el footer.php, copia ese archivo desde la carpeta del tema padre a la carpeta de tu child theme. Luego edítalo en el hijo. WordPress usará automáticamente la versión del hijo. No toques nunca el archivo original del padre.
Añadir funciones personalizadas
En el functions.php del child theme, puedes añadir nuevas funciones o modificar las existentes usando hooks (filtros y acciones). Por ejemplo, para cambiar el texto "Leer más" de los extractos:
function cambiar_texto_leer_mas( $more ) {
return '... Seguir leyendo';
}
add_filter( 'excerpt_more', 'cambiar_texto_leer_mas' );
Añadir archivos JavaScript
Puedes encolar scripts en el functions.php del hijo usando wp_enqueue_script(). Por ejemplo, para añadir un script personalizado:
function agregar_mi_script() {
wp_enqueue_script( 'mi-script', get_stylesheet_directory_uri() . '/js/mi-script.js', array('jquery'), '1.0', true );
}
add_action( 'wp_enqueue_scripts', 'agregar_mi_script' );
Crea una carpeta js dentro de tu child theme y coloca allí tus archivos.
Preguntas frecuentes (FAQ)
1. ¿Puedo crear un child theme de cualquier tema?
Sí, siempre que el tema padre esté bien codificado y siga los estándares de WordPress. Los temas de repositorio oficial suelen funcionar. Algunos temas premium pueden tener peculiaridades, pero en general sí.
2. ¿Qué pasa si el tema padre se actualiza?
Nada malo. Tu child theme sigue funcionando. Las actualizaciones solo afectan a la carpeta del padre. Tus cambios en el hijo se mantienen. Eso sí, a veces el padre introduce nuevas funciones que quizás quieras aprovechar; entonces deberías revisar si necesitas actualizar algo en tu hijo.
3. ¿Puedo tener varios child themes de un mismo padre?
Sí, puedes crear varios child themes y activar el que necesites en cada momento. Por ejemplo, uno para pruebas y otro para producción.
4. ¿Pierdo rendimiento al usar un child theme?
No, el rendimiento es prácticamente el mismo. Solo se carga un archivo CSS extra (el del hijo), pero es mínimo. Además, al mantener el padre limpio, las actualizaciones son más eficientes.
5. ¿Necesito saber PHP o CSS?
Para cambios básicos, solo CSS. Para modificar plantillas o funciones, necesitas nociones de PHP. Pero puedes empezar copiando ejemplos de internet y adaptándolos.
6. ¿Cómo desactivo el child theme si algo sale mal?
Accede por FTP o Syspanel a wp-content/themes/ y renombra la carpeta de tu child theme (por ejemplo, añadiendo "-old" al final). WordPress automáticamente activará el tema padre por defecto. Luego puedes corregir el error.
7. ¿El child theme hereda todos los ajustes del personalizador?
Sí, los ajustes guardados en la base de datos (como colores, fuentes, logotipos) se mantienen porque no dependen de archivos. El child theme hereda la configuración visual que hayas hecho desde Apariencia > Personalizar.
8. ¿Puedo usar un page builder como Elementor con un child theme?
Sí, perfectamente. Los page builders guardan su contenido en la base de datos, no en archivos de tema. El child theme solo afecta a la estructura y estilos base. Puedes seguir usando Elementor sin problemas.
Consejos finales para mantener tu child theme seguro
- Haz siempre una copia de seguridad antes de hacer cambios importantes.
- Prueba en un entorno de staging si tu hosting lo permite.
- No copies todo el tema padre dentro del child theme. Solo copia los archivos que necesites modificar.
- Mantén actualizado el tema padre para recibir parches de seguridad y nuevas funciones.
- Documenta tus cambios en un archivo de texto dentro de la carpeta del child theme, así sabrás qué modificaste.
[TIP] Si usas Syspanel, recuerda que el puerto de acceso es el 2106. Desde allí puedes gestionar archivos, bases de datos y hasta crear copias de seguridad fácilmente.
Conclusión
Crear un child theme WordPress es una habilidad esencial para cualquier persona que quiera personalizar WordPress sin perder cambios. No solo te protege de las actualizaciones, sino que te da libertad para modificar tu web a tu gusto. Ya sea que elijas el método manual o un plugin, lo importante es entender el concepto: el child theme es tu capa de seguridad creativa.
Ahora que sabes cómo hacerlo, te animo a que practiques. Empieza con algo pequeño, como cambiar un color de fondo. Verás que es gratificante y te abrirá las puertas a un control total sobre tu sitio. Si tienes dudas, recuerda que siempre puedes consultar la documentación de WordPress o pedir ayuda en foros. ¡Buena suerte y a personalizar!
