In Autores Invitados, WordPress
La guía definitiva sobre los Child Themes en WordPress
5 (100%) 10 votos

Guía definitiva sobre Child Themes en WordPress

Hoy viene a MasQueUnaWeb un paisano del que he aprendido mucho leyendo su blog. Victor Campuzano es un gran blogger, creativo y humilde.
Cuando aún ni lo conocía, ya me transmitía ese buen rollo que tiene. (ser de murcia ayuda, ¿no axo? jajaj)
Poco puedo decir de este hombre, un crack en toda regla. Está entre los mejores y es una alegría el haberlo conocido.
Y más aún cuando le propuse escribir un post en el blog, y me contesto al instante que se lo iba a añadir a su lista de tareas y me explicó un poco la idea que tenía.
La sorpresa fue que a la semana ya me estaba mandando un post!

Y menudo post 😮

Bueno, te dejo con él, que me pongo pesado!


 

 

¡Hola! Que ilusión escribir en esta bitácora, madre mía. La verdad es que cada vez que me invitan a escribir en “casa ajena” me lleno de ilusión pero, si me lo permites, también de un poquito de miedo.

No puedo negarlo. En tu propio blog pues como que ya lo tienes dominado pero cuando sales ahí fuera no puedes evitar pensar en si gustará lo que haces y en si será apropiado para ti, que lees habitualmente este blog.

Espero que si. Voy a intentar que si. ¿Vale?

Como Alex ya me ha presentado más arriba, voy a entrar directamente en materia. En concreto, hoy vamos a hablar de los child themes de WordPress. Al final del artículo, si lo hago bien, habrás entendido el concepto y resuelto algunas dudas. ¡Vamos a ello!

 

SUSCRIBETE YA A MI BLOG Y RECIBE EN TU CORREO 2 EBOOKS GRATUITOS

¡ÚNETE YA A MI PEQUEÑA TRIBU!

Te mandaré al instante los 2 Ebooks que he preparado para ti :)

Qué es un Child Theme y para qué sirve

Estoy súper convencido que habrás oído más de una vez hablar o mencionar este concepto. Apuesto a que incluso muchos hablan de que “es lo más” y muy necesario pero que nunca te has planteado ponerlo en tu blog por lo difuso y confuso que puede llegar a ser. ¿Puede ser?

O, mira, mejor esta. Seguro que has comprado un theme Premium que ya viene con su Child Theme y tú has dicho algo así como “ostrás! Que yo no quería hijos!!”. Macachisenlamar, ¿ahora que haces? ¿Activas al padre o al hijo? ¿Para qué sirve? ¿Es obligatorio?

Pues verás que es muy fácil de entender: Imagina que tienes en un folio los trazos de un dibujo de Pocoyó con Lula y Eli. No hay color, sólo están los trazos pero el dibujo en sí está chulísimo. Sin embargo, tu peque quiere color. Así que te pones a pintar de azul al pocoyo y se te queda chachi. Hasta aquí todo bien. ¿No?

Ahora imagina que tu peque cambia de opinión y se le mete en la sesera que quiere un Pocoyo verde. Imposible, nada que hacer. ¿Verdad?

Imagina que, en vez de colorear directamente el Pocoyó el día de ayer, decidiste hacer una fotocopia y colorearla, dejando intacto el original. Hoy, que tu peque está de otro humor, te pide otro color. Entonces si que lo tienes fácil. ¿Verdad? Porque sólo tienes que sacar una nueva fotocopia y volver a colorear.

Ah, que ya lo vas pillando, ¿no? ¿Ves? ¡Te dije que era súper fácil!

En lo que a las plantillas se refiere, es algo parecido. Los Child Themes están pensados para que puedas hacer cambios en la plantilla de forma ordenada, sin afectar directamente a la original. De este modo, si alguna vez cometes un error, puedes eliminar el hijo y tendrás la original intacta. O, por otro lado, si hay una actualización de la principal, podrás hacerla sin miedo porque tus cambios en “el hijo” no se verán afectados. ¿Me sigues?

Los Child Themes de Worpdress son formas de aislar los cambios que realizas en una plantilla de modo que los archivos originales permanezcan intactos.

 

Preguntas frecuentes sobre los Child Themes

Bueno, creo que el concepto está más o menos claro. ¿Verdad? De he hecho he podido ver tu cara en plan “venga tío, no te enrolles que es fácil” mientras leías lo anterior. ¿Si? (es broma eh!!! Que no tengo poderes!).

Vale, pero lo hemos definido. Seguro que definiciones habrás leído alguna que otra y, aun así, puede ser que te surja alguna duda. A ver si la respondo:

  • ¿Es recomendable en todos los casos?. Para nada. Lo primero que tienes hacer es pensar en si vas a realizar algún cambio en el código de la plantilla. Si no eres de meterte a editar ficheros todo esto no te servirá de nada.
  • Si tengo un Child Theme activado, ¿puedo actualizar sin miedo mi plantilla cada vez que quiera? A ver. Si, si te refieres a miedo de perder esos cambios en el código original de la plantilla que has hecho antes. Pero no, no te protege en absoluto de que la nueva versión de tu plantilla no sea compatible con algún plugin que tengas instalado o con tu servidor o con tu propia versión de WordPress. Una cosa no tiene nada que ver con la otra.
  • Si tengo un Child Theme activado, ¿puedo actualizar mi WordPress y/o plugins sin miedo a que se me “descuajaringue” todo? No, lo siento de veras. El Child Theme sólo es para aislar los cambios que puedas hacer tú a tu tema original. Las actualizaciones de plugins y WordPress pueden afectar a tu tema original y romperlo (o arreglarlo). Siempre está el riesgo.
  • ¿Entonces? ¿Para qué sirve esto? Pues, como te he dicho, sólo si piensas hacer un cambio específico en la plantilla. Sirve para que tengas aislados y ordenados los cambios que vas haciendo de modo que, dentro de unos meses, puedas seguir actualizando la plantilla sin tener que recordar qué ficheros cambiaste.
  • ¿Sobrecargan el servidor o ralentizan la página? Para nada. La gestión de un Child Theme está nativa en WordPress y es muy sencilla. No ralentiza la carga.
  • ¿Se pueden tener varios hijos? Bueno, eso ya es decisión tuya. Yo creo que como mínimo 2, que luego no estén solicos en el mundo. ¿Verdad? Pero si no quieres, pues hijo único o si prefieres, pos cuatro o 5. Cuando uno se pone … Ah! ¿Te refieres a WordPress? Jejejeje. Si, también puedes.

¿Qué tal? ¿Cómo lo ves? ¿Te ha quedado más o menos claro? Seguro que si. En la mayoría de los casos, cuando uno comprende el concepto, se da cuenta de que no lo necesita porque sólo unos pocos nos ponemos a cambiar cosas en el código.

En mi caso si lo uso porque soy un blogger que cuida al máximo los detalles y esto me lleva a tener que meterme a hacer esos trabajitos de bricolaje… ¡Pero no es algo común!

 

Cómo se crea un Child Theme en WordPress

Vale, que quieres más eh?? ¡Tenemos a alguien valiente! Así me gusta.

En efecto, es una forma de perderle el miedo al código porque sabes que cualquier cambio que hagas se soluciona quitando la carpeta o eliminando el archivo del tema hijo para que funcione el original. Así que, si te apetece, permíteme decirte cómo hacerlo:

 

Crea una carpeta en tu directorio de temas

Accede a tu servidor utilizando tu programa de FTP preferido (el mío es Filezilla) y navega por las carpetas hasta wp-content/themes.

Ahí debes crear una carpeta que será la que albergue los ficheros de tu nuevo tema.

Por norma general, esa carpeta suele llamarse de la siguiente forma:

nombretemaprinciapl-child

Por ejemplo, si quieres crear una versión del tema Twenty Fourteen, la carpeta se llamaría twentyfourteen-child.

Pero eso no es obligatorio, puedes llamarlo “lamadrequemepario-soyelhijo” si te apetece.

 

Agrega un archivo style.css a esa carpeta

Es el único archivo obligatorio y tiene que empezar con estas líneas:

/*

Theme Name: Nombre que quieras darle al tema

Theme URI: dirección donde publicas el tema

Description: Descripción del tema

Author: Tu mismico nombre

Author URI: Dirección de tu web / blog

Template: nombre exacto del tema padre

Version: 1.0.0

Text Domain: carpeta tema hijo

*/

@import url(“../carpetatemapadre/style.css”);

/* =Aquí empieza la personalización de tu tema

————————————————————– */

He puesto en rojo aquello que tienes que editar. Sobre todo, lo más importante es la parte de Template donde tienes que poner el nombre exacto de la carpeta que contiene la plantilla principal y, casi al final, donde dice @import que tienes que hacer lo mismo.

 

Activa el tema hijo en la configuración de Temas de WordPress

Con lo anterior ya has tenido al bebé. Vamos, que fácil eh??

Si te vas a la configuración de temas, verás que ya tienes disponible el hijo y puedes activarlo. Hazlo sin miedo porque, en realidad, no va a producir ningún cambio en la visualización de tu WordPress. Porque no has realizado ningún cambio.

 

Empieza a hacer cambios

Puedes empezar a escribir estilos CSS nuevos en ese archivo sin miedo a que, tras una actualización, se pierdan.

Además, puedes cambiar porciones de código. Por ejemplo, imagina que quieres cambiar el modo en que se muestran los comentarios en tu tema.

Pues lo único que tienes que hacer es localizar dónde está el archivo encargado de ello en tu carpeta principal y copiarlo a la misma ruta de tu carpeta hijo.

Luego, puedes modificar el archivo en la carpeta “child”. Mientras el archivo exista en la carpeta hijo, tendrá preferencia sobre el principal.

 

Conclusiones finales

¡Ya está! ¿Qué te ha parecido? Igual demasiado largo pero lo necesitaba para exponerlo todo de una forma sencilla. ¿O no lo he conseguido? Cachis, pues tranqui, que si te han quedado dudas estamos ahí para responderlas en los comentarios.

¿UN resumen?

El uso de temas hijos se está extendiendo pero no es algo que todos necesitemos. Es una maravilla para aquellos que tocamos nuestra plantilla para conseguir una personalización máxima sin querer perdernos por el camino.

Pero las garantías no van más allá de la propia plantilla. No supone seguridad alguna en la compatibilidad con los plugins y actualizaciones de WordPress.

Ahora si que si … ¡Ya está! De nuevo muchas gracias a Alex por la invitación y a ti, muy agradecido de que hayas invertido tu tiempo en leerme, espero que te haya resultado muy útil. ¿Qué te ha parecido? ¿Lo has entendido por fin? ¿Conocías el concepto? ¿Tienes activado un Child? ¿Cuántos piensas tener? ¡Cuenta, cuenta!

Victor Campuzano
Growth Hacker no soy, pero lo vivo. De mi blog no vivo, pero ahí si que soy como soy. Marketing Digital, Creatividad y Blogging con pasión y desenfado.
Recent Posts
Showing 10 comments
  • Javi Felices
    Responder

    Muchas gracias Victor por el artículo, llevaba unos días un poco detrás sobre este asunto, y me ha quedado muy claro, tampoco me iba a meter en camisas de once varas, pero mejor tener las cosas claras.

    Un abrazo y gracias a ambos 😉

    • Víctor Campuzano
      Responder

      Hola Javi!!

      Pues muchas de nadas. La verdad es que ha sido un honor y alegría haber sido invitado a esta bitácora y, por supuesto, recibir un comentario como el tuyo.

      Muchas gracias a Alex por la invitación y un saludo para ti Javi . 🙂

      • Ruth
        Responder

        Hola Victor

        Tengo una duda sobre la actualización de mi wordpress ojala me puedas ayudar, te lo agradecería mucho.

        Mi problema es este:

        Tengo una versión muy vieja de un THEMA de WordPress instalado (2.3.0) pero quiero actualizarlo a la versión mas nueva, se que el salto de versiones de 2.3.0 a 4.1.1 es muy alta, al hacerlo pierdo muchos estilos y en casos se me ha desaparecido elementos como “revolution slider” me gustaría saber si ha llegado a ti un problema parecido al mio.

        Te lo agradezco 

        • Víctor Campuzano
          Responder

          Hola Ruth. La verdad es que si que he visto muchos casos.

          Supongo que te refieres a WordPress muy antiguo. Efectivamente, en cambios con tanto recorrido puedes perder mucho y es muy probable que se te rompa.

          Sin embargo, mantener un wordpress tan desactualizado te puede traer muchos problemas como hackeos e incompatibilidades.

          Mi recomendación es que saltes a otro tema. Monta un entorno de pruebas en otro alojamiento y actualiza el wordpress a ver qué ocurre. Actualiza todos los plugins y mira si el tema tiene una versión más moderna compatible.

          En caso de que no, lo mejor es que cambies a otro tema más moderno. ¡Ya va siendo hora de un cambio de aires! 🙂

          Espero haberte ayudado.

          Saludos!

  • Leonardo Rafael Grabow
    Responder

    Hola Victor:
    Muy bueno el artículo sobre CHILD.
    Te cuento tengo 2 clientes, que tienen muchas modificaciones sobre el tema original, y quieren hacer un child de estos, para realizar actualizaciones.
    Que opciones puedo tener?
    * Rehacer la web con una nueva instalación y luego copiar los cambios, directamente al child theme?
    * Hacer un child con lo actual, y luego modificarlo en el original o que se aplique la actualización y ahí modifique el css original y quede todo en el Child?

    Desde ya, quedo a disposición y agradezco tus comentarios.
    Muchas gracias
    Leonardo Grabow

  • Víctor Campuzano
    Responder

    Hola Leonardo!

    Bueno, en este caso se te puede complicar. La mejor forma de hacerlo es:
    1. Descarga la versión original del tema (misma versión que tienen) y compara los archivos para ver qué cambios se han ido haciendo. Puedes usar herramientas como http://www.quickdiff.com/ o, si tienes más conocimientos, por línea de comandos de una consola.
    2. Una vez localizados los ficheros que han sido modificados, copialos a una nueva carpeta respetando la estructura. Ahí tienes el tema hijo.
    3. Pon la versión original del tema en activo, sube la carpeta del tema hijo y activa el hijo en WordPress.
    4. Si todo ha ido bien, se mostrará correctamente y tendrás migrado a un tema hijo.

    El problema de cuando hay muchos cambios hechos en el tiempo es que ya no sabes qué has cambiado ni donde. Con esto, que parece muy laborioso pero puedes acabarlo en una o dos horas, habrás solucionado el problema.

    Luego ya puedes jugar a actualizar el tema original y ver si los cambios son compatibles.

    Si algo falla tras actualizar, entonces tienes que:
    1. Localizar el fichero que está dando fallo.
    2. Copiar el original actualizado.
    3. Aplicar los cambios que se han ido haciendo sobre el actualizado.

    Espero que te haya resultado de ayuda.

    Saludos!

  • ines fernandez
    Responder

    hola! pero en caso de venir ya el archivo child con la plantilla que has comprado qué se debe hacer con él?
    Gracias!!!!!!

    • Alex Sanchez
      Responder

      Hola Ines, muchas gracias por pasarte por aquí 🙂

      Si tu plantilla viene con un child theme ya no tienes que hacer todo este trabajo.

      Te servirá para lo mismo, el procedimiento es instalar la plantilla y luego el child. Deja el child theme activado y así no perderás ninguna personalización que hagas después de una actualización de la plantilla.

      Un saludo!!

    • Víctor Campuzano
      Responder

      Hola Inés!!

      Pues si no piensas hacer cambios en el código o style.css no tienes que hacer nada. Ni siquiera lo subas. Ahora, si no sabes si querrás hacerlo o piensas hacer los cambios, súbelo y activa el tema hijo.

      En el paquete estándar que te descargas el tema hijo no aplica ningún cambio, no tiene efecto salvo que coloques ahí nuevos archivos.

      Saludos!

  • paula
    Responder

    Vaya pedazo de post!! Yo tengo una duda, a ver si me puedes ayudar. Yo tengo un blog con genesis y un child theme de pago. Si personalizo las css y luego hago una actualización del child theme, perdería esos cambios. ¿Puedo hacer un child theme del child theme, o una copia, para tener otra css que no se me sobreescriba? Vamos, que cómo actualizo el tema hijo sin perder los cambios realizados.

    Gracias mil

Leave a Comment

Contacta conmigo

Envíame un email con lo que necesitas y te enviaré un presupuesto ajustado a lo que buscas en menos de 48 horas.

Not readable? Change text.

Start typing and press Enter to search