Ventajas y desventajas de usar un tema hijo o Child Theme

Si estás utilizando CMS para tus proyectos web, sabrás que una de las primeras decisiones a tomar será la elección de una plantilla. Esta decisión es muy importante, ya que una plantilla poco estética, que proponga una interfaz nada intuitiva y con evidentes problemas de rendimiento pueden lastrar el crecimiento de la página.

La plantilla está compuesta por todo aquello que da forma a la página: estructura de widgets, colores, el tipo de letra que se va a usar, la manera de navegar, paginación…

Cuando hablamos de un Child Theme (también conocido como tema hijo), nos referimos a un tema que se ha desarrollado partiendo como base del tema principal (del Parent Theme -> tema padre). Cuando se crea el tema hijo, este heredará la gran mayoría de las características del tema padre, pero con la particularidad de que no se actualizará si este último lo hace.

Ejemplo: Creamos dos temas hijos de “Tema-Principal” a los que llamamos “Tema-Hijo1” y “Tema-Hijo2”. Aparece una nueva actualización y la aplicamos a Tema-Principal”. Hay un error y se producen un problema de rendimiento con este tema. Sin embargo, “Tema-Hijo1” y “Tema-Hijo2” están intactos, ya que estos no han recibido la actualización.

¿Para qué sirve un “Tema Hijo”?

Los Child Theme se pueden utilizar por muchos motivos, pero los más habituales son los 3 que vamos a describir a continuación:

  • Modificaciones de estilo: Podemos crear un Child Theme antes de ponernos a modificar las hojas de estilo de una web (css). Así, si cometemos un error en cualquier punto, el estilo se mantendrá intacto en los “temas hijo”.
  • Ejecución de códigos externos: Podemos crear un “Tema Hijo” para ejecutar ciertos códigos de los que no nos terminemos de fiar. Si acaban dañando la página, el “Tema Padre” no quedará comprometido.
  • Uso de funcionalidades diversas: Son muchas las funciones las que se pueden agregar a una web. Si existe la posibilidad de crear un error, con un Child Theme podemos evitar que todo nuestro trabajo quede arruinado.

Acceder al código de un CMS como Wordpress parece fácil, pero es como una bomba de relojería. Si no sabemos muy bien lo que estamos haciendo (y muchas veces, hasta sabiéndolo), es posible que al alterar una línea de código podamos tocar algo en la estructura que acabe afectando al funcionamiento de la página.

Con un Child Theme podemos hacer pruebas: podemos aplicar nuevos estilos, funcionalidades, incluso hasta implementar códigos externos con la seguridad de que, si algo sale mal, siempre tenemos otro tema completamente funcional.

Creación de un Child Theme

Crea un Child Theme no es un proceso excesivamente complicado, pero sí que requiere de un cierto manejo de la estructura interna del servidor. Esto requiere que, o bien accedamos a través de FTP, o bien que usemos el “administrador de archivos” que nos propone nuestro proveedor de hosting.

Estos son los pasos que tenemos que dar para la creación del tema hijo:

  • Accede a la carpeta wp-content y a la subcarpeta de Themes. En esta última se almacenan todas las plantillas que hayamos descargado (aunque no las tengamos activas).
  • Tienes que saber el nombre de la plantilla que estamos usando (que, por lo general, será el mismo que tendrá la plantilla en la que se guarda).
  • Duplica la carpeta y cambia el nombre; para localizarla más fácilmente siempre podemos utilizar el nombre del tema del padre + “+Child”.
  • Accede a esta nueva carpeta y localiza un archivo que se llama css. Para que este proceso funcione hay que cambiar los datos que se encuentran en el encabezado, adaptándolos a los de nuestro propio proyecto web.
  • Para probar el nuevo estilo tan sólo hay que ir a Wordpress-Apariencia y elegir el nuevo tema. Ten en cuenta que cualquier cambio que se aplique en este nuevo tema no afectará al padre, y viceversa.
  • Y así puedes crear tantas copias como quieras.

Importante: Es posible que, dependiendo del Theme que estés usando, no baste con editar el archivo Style.css. En ciertos casos también necesitarás añadir manualmente una copia del archivo functions-php desde el tema padre al tema hijo. No es lo habitual, pero puede llegar a ocurrir.

Lo mejor que puedes hacer es elegir un tema que ya contenga un child theme y cuanto menos código lleve el theme mucho mejor. Muchas plantillas web para wordpress llevan muchas opciones de configuración, pero la realidad es que eso es una opción que te perjudicará más que ayudará. Normalmente llevan demasiado código y eso fuerza a cargar muchos ficheros de css y variantes de código que pueden hacer de tu web una tortuga.

Ventajas de usar un tema hijo o Child Theme

Si todavía no tienes claro que lo que necesitas es crear un “tema hijo”, sigue leyendo las ventajas de hacerlo:

Actualizaciones independientes: Las actualizaciones que apliquemos en el theme parent no afectarán a los hijos. Ya sabes que en los CMS nunca se sabe cuándo una actualización puede fallar por diferentes motivos (aunque, en teoría, esto nunca debería de pasar). Con este recurso podemos programar las actualizaciones para que se lleven a cabo de manera automática, sin tener que lamentar nada después.

Mejoras en seguridad: Uno de los principales problemas de usar un Theme gratuito es la seguridad. Muchos de estos temas tienen vulneraciones importantes de seguridad que pueden utilizar los atacantes externos para acceder a nuestra web. Creando un Child Theme podemos trabajar en la seguridad para intentar mejorarla. Si lo consigues hacer, no te costará mucho aplicarla al Parent Theme.

Frameworks: Los “Frameworks” son unas funcionalidades que nos permiten personalizar al máximo la web. Están colonizando Internet, de tal forma que cada vez son más los usuarios los que los utilizan. Podemos jugar con ellos en los “temas hijos”, sin temor a que comprometan la web.

Fáciles y rápidos de crear: Como ya hemos podido ver en el mini-tutorial anterior, crear un “Tema hijo” no podía ser más sencillo. Tan sólo necesitaremos tener un mínimo de conocimientos en relación con la navegación a través de los ficheros internos de la web para conseguirlo. En cuanto lo hayas conseguido una vez verás cómo la siguiente no te cuesta nada.

Mejora el rendimiento: Con un child theme podemos ayudar a mejorar tu posicionamiento seo indirectamente, ya que reducimos las llamadas a ficheros como css o js ya que si lo hacemos bien, deberíamos unificar todos en uno solo.

Desventajas de usar un Child Theme

Algunos “Child Theme” están asociados con el “Parent Theme” y esto significa que podrían haber algunos problemas de rendimiento importantes mientras estamos navegando.

Ahora ya conoces lo interesante que es la creación de estos llamados “temas hijo”.

Compartir

LinkedIn
Facebook
WhatsApp
Twitter
Email
Print

Fuentes consultadas

Fundador Nordic Projects

Mi aventura empieza en la arquitectura, derivando hacia el diseño gráfico, especializándome en UX/UI, desarrollándome en la programación web y culminando con una larga introspección en el mundo de google y la analítica web. En esa diagonal me podido ver todo tipo de procesos y aprender todo tipo de estrategias ganadoras y perdedoras a partes iguales.