como-crear-temas-hijo-en-wordpress

Si habéis aterrizado aquí es porque quizás necesitéis saber cómo crear un tema hijo en WordPress.

Antes de explicar qué es un tema hijo, me gustaría empezar por enumerar alguna de sus ventajas cuando utilizamos temas hijo en WordPress.

  • Evitará que perdamos los cambios que hayamos realizados en nuestra plantilla o tema.
  • Nos permitirá optimizar el tiempo durante el proceso de desarrollo.
  • Crear un tema hijo en WordPress es una magnífica forma de realizar pruebas durante la fase de desarrollo, sin el riesgo de sufrir consecuencias fatales para nuestra plantilla.

Estupendo pero, ¿Qué es realmente un tema hijo?

Es un tema o plantilla que nace como réplica de la plantilla original -tema padre- y que hereda su diseño y funcionalidades. Cuando configuramos un tema hijo con el objeto de adaptarlo a nuestra conveniencia y le indicamos al sistema su prevalencia sobre el tema padre, ponemos a salvo el tema original. Este simple desempeño nos permitirá mantener nuestra versión de la plantilla siempre actualizada, evitando el riesgo de perder las adaptaciones que hayamos llevado a cabo. ¿Verdad que suena bien?

Cabe indicar antes de proseguir, que no siempre resulta posible o recomendable trabajar con temas hijo. Si tienes dudas sobre esto consulta con Pimeweb. No obstante, puesto que esto daría pie a un post mucho más técnico y extenso, lo dejaremos como simple apunte y pasaremos a detallar los pasos sobre cómo crear un tema hijo en WordPress:

Empieza creando una nueva carpeta:

En la ruta wp-content/themes encontrarás una serie de carpetas que contienen tus temas disponibles. Debes crear una nueva carpeta para albergar el tema hijo. Para evitar posibles confusiones resulta recomendable nombrar esta carpeta hijo con el nombre de la carpeta padre seguido de “-hijo”. Por ejemplo, si tu tema padre es Avada y se aloja en una carpeta de nombre Avada, la carpeta para el tema hijo podría llamarse Avada-hijo.

Crea un archivo style:

Deberás crear un archivo con el nombre style.css que a la larga incluirá las adaptaciones que realices sobre el tema original. 

/*

Theme Name: Avada hijo

Description: Tema hijo de Avada

Author: Pimeweb

Author URI: https://www.pimeweb.com

Template: Avada

Version: 1.0.0

Text Domain:  Avada

*/

En el caso de que desees configurar un tema hijo a partir de un tema que no sea Avada, por ejemplo OtroTema, únicamente deberás substituir Avada por el nombre del tema a partir del cuál desees crear tu tema hijo. Ejemplo:

/*

Theme Name: Divi hijo

Description: Tema hijo de Divi

Author: Pimeweb

Author URI: https://www.pimeweb.com

Template: Divi

Version: 1.0.0

Text Domain:  Divi

*/

Si quieres cambiar algo más que la hoja de estilos, tu tema hijo puede sobrescribir cualquier archivo del tema padre. Simplemente incluye un archivo con idéntico nombre en la carpeta del tema hijo y automáticamente se sobreescribirá el archivo equivalente en la carpeta del tema padre.

Por ejemplo, si quieres cambiar el código PHP para la cabecera (header), puedes incluir un header.php en la carpeta de tu tema hijo. De este modo, este archivo tendrá prioridad sobre el header.php del tema padre.

También ppuedes incluir archivos en el tema hijo que no estén incluido en el tema padre.

Crear archivo functions.php:

Tendrás que crear un archivo functions.php en la carpeta raíz del tema hijo. En la primera línea de código deberás incluir una etiqueta de apertura de PHP. El resto de código irá siempre después de esta etiqueta de apertura.

La estructura del archivo functions.php es sencilla: una etiqueta PHP de apertura, una etiqueta PHP de cierre y, entre ambas, el código PHP que desees. Podrás incluir tantas funcionalidades como desees.

Ya has creado tu tema hijo en WordPress. Felicidades.

A diferencia de style.css, el functions.php de un tema hijo no sobrescribe al tema padre. En lugar de eso, se carga de forma complementaria al archivo functions.php del tema padre. Es aquí donde radica la principal ventaja de los temas hijo en WordPress.

El archivo functions.php de un tema hijo nos permitirá modificar la funcionalidad del tema padre sin problemas.

Supongamos que deseamos agregar una función PHP a nuestro tema original. La forma más rápida consistiría en abrir el archivo functions.php del tema original e incluir la función php. Pero, ¿qué ocurriría la próxima vez que actualizásemos nuestro tema?, efectivamente, esa función desaparecería. Al configurar un tema hijo, podemos incluir un archivo functions.php en él y añadir la función en ese archivo. La función hará exactamente el mismo trabajo que hubiese hecho desde el tema padre, con la ventaja de que no será afectada por próximas actualizaciones del tema original.

Ahora ya sabes cómo crear un tema hijo en WordPress. Crear un tema hijo es otro modo de evitarte posibles dolores de cabeza en un futuro.