por

Un child theme en WordPress es un tema (hijo) que hereda y amplia las características de otro tema (padre) sin modificar el código de este último. En la práctica un child theme o tema hijo funciona como un clon del tema padre, pero con las modificaciones que nosotros queramos introducirle.

Siempre que vayamos a crear un tema de WordPress a partir de otro tema ya construido, debemos usar un tema hijo y nunca tocar directamente el código del tema original.

Si utilizamos un tema hijo:

– Al aplicar una actualización del tema padre no perderemos los cambios que hayamos introducido en el código, ya que estos se encuentran en el tema hijo o child theme.

– Es una forma rápida de desarrollar, ya que podemos construir temas nuevos (hijos) basándonos en otros temas (padres), introduciendo sólo las modificaciones que necesitemos.

La forma de crear un tema hijo es la siguiente:

1) Crear la carpeta del tema hijo en wp-content/themes . Generalmente se suele usar el mismo nombre de carpeta que el tema padre, añadiendo el sufijo -child (de hijo). Por ejemplo, si la carpeta del tema original se llama twentyfourteen , la del tema hijo podría llamarse twentyfourteen-child . Esto es una convención, por legibilidad, pero no es obligatorio y podemos usar el nombre de carpeta que queramos para el tema hijo.

2) En la carpeta del tema hijo crearemos un archivo CSS de nombre style.css , en el que incluiremos la siguiente cabecera:

/*
 * Theme Name: Twenty Fourteen Child
 * Template: twentyfourteen
 */

@import url("../twentyfourteen/style.css");

Sustituyendo los valores del tema ejemplo “twentyfourteen” por los que correspondan a nuestro tema padre. Bajo la etiqueta @import podemos incluir todo el código CSS que queramos, que añadirá nuevos estilos o sobreescribirá los que ya estén presentes en el style.css del tema padre.

Nota: Este método funciona perfectamente, aunque en la documentación oficial de WordPress recomiendan no utilizar @import , sino crear un functions.php en la carpeta del tema hijo y usar la función wp_enqueue_style() .

Hecho esto, ya tenemos nuestro tema hijo listo. Tan sólo tenemos que ir a Apariencia > Temas y activarlo. En principio veréis que es un clon del tema padre… listo para introducir las modificaciones que necesitemos.

A partir de ahora cada estilo CSS que incluyamos en style.css sustituirá al estilo original del tema padre.

Si queremos modificar otro archivo que no sea style.css , tan sólo tenemos que crear un archivo en la carpeta del tema hijo con el mismo nombre e incluir ahí todo su código. Los archivos del tema hijo sustituirán (por completo) a los del tema padre. Por ejemplo, si creamos un header.php en la carpeta del tema hijo, este header.php sustituirá al del tema padre.

En el caso particular de las funciones, los archivos functions.php del tema padre e hijo no se sobreescriben, se cargan conjuntamente, primero el del hijo y luego el del padre.