Tabla de Contenidos
Hay muchas formas de actualizar un tema de WordPress, pero es fácil perder los datos y personalización en el diseño que habíamos realizado, por lo que necesitamos saber cómo evitar que eso suceda. Si no has personalizado el theme todavía, no necesitas este artículo, aunque es recomendable prepararlo todo con antelación, pues es la única manera de asegurar una transición verdaderamente transparente. Si ya has personalizado tu sitio, no te preocupes. No es demasiado tarde.
La mayoría de desarrolladores aficionados sólo se dirigen a la hoja de estilo del theme para comenzar a reorganizar las cosas. Eso está muy bien, hasta que actualice y toda su personalización minuciosa desaparece. De hecho, si se personaliza un sitio web sin tener en cuenta cómo los cambios afectarán a este, se encontrarán con un mundo lleno de dolores de cabeza. Antes de considerar la falta de actualización de un sitio web y dejar que sea blanco de la práctica para los hackers de todo el mundo, sigue algunos de los consejos a continuación para integrar las personalizaciones en su proceso de actualización.
⚙️ WordPress Frameworks
La solución más común y más popular es el Génesis Frameworks. Si alguna vez has leído un blog de WordPress o algun tutorial, hay una buena probabilidad de que hayas visto un desarrollador sin aliento alabando las bondades de Génesis.
Génesis no es solo un tema, sino más. Fiel a su nombre, podría ser descrito como la plantilla sobre el que se construyen muchos temas, estos vienen en forma de temas hijo que construyen un «exterior» sobre el marco. Con Genesis, se puede cambiar y actualizar el marco con todo lo que quieras sin perder un solo detalle de su personalización. Cuenta con algunas otras características bastante deseables y merece la pena echarle un vistazo.
🔌 WordPress Plugins
Hay toda una serie de plugins que pueden ayudar a aliviar el proceso de actualización. La mayoría de ellos son para el diseño a utilizar antes de que haya comenzado a personalizar, pero si ya tenemos personalizado el theme existen también otras alternativas como vemos a continuación.
El plugin WP Template Overrides permite omitir rápida y fácilmente cualquier archivo de plantilla en cualquier tema que actualmente tengas instalado. Una vez instalado el plugin, elige el tema, y luego el archivo que deseamos anular o editarlo en el editor de código incluido. Al pulsar en «Guardar» se activará la anulación y seremos capaces de ver los cambios de inmediato.
Si no tenemos ganas de hacer todo lo anterior, se puede utilizar un plugin llamado Child Theme Configuraor que puede hacerlo desde el panel de WordPress, y ofrece lo mejor de ambos.
🧒 Temas Niño de WordPress
La forma más común de hacer personalizaciones estables y el más recomendable es con un tema niño (child theme). Para aclarar, un tema infantil es muy parecido a una capa de Photoshop o un cel de animación: una hoja de estilo transparente que te permite de forma no destructiva realizar cambios. No sólo cambios de imagen, si no aún más importante poner modificaciones importantes a las funciones esenciales del sitio en un tema hijo.
La modificación de archivo functions.php de tu sitio es una de las peores cosas que puedes hacer antes de una actualización, como la pérdida de un componente funcional importante en esencia que puede tirar la viga de soporte de tu sitio web. Por lo tanto, incluir cambios funcionales en el tema hijo puede ayudar a evitar tener que volcar demasiada información en un solo sitio. En caso de que necesitar alguna modificación estos son bastante fáciles de crear. Para hacer esto sólo es necesario incluir los datos a un tema hijo que deseamos cambiar.
En primer lugar, es necesario crear una nueva carpeta en el directorio wp-content/themes para sostenerlo. Darle el mismo nombre que el tema padre, pero con «-child». Dentro de esa carpeta, creamos un archivo llamado «style.css» e incluimos el siguiente código :
/* Theme Name: Twenty thirteen Child Theme URI: http://ejemplo.com/twenty-thirteen-child/ Description: Twenty thirteen Child Theme Author: Perico Author URI: http://ejemplo.com Template: twentythirteen Version: 1.0.0 Tags: light, dark, Three-columns, left-sidebar, responsive-layout, accessibility-ready Text Domain: twenty-thirteen-child */ @import url("../twentythirteen/style.css");
Cualquiera de los campos de entrada se pueden cambiar como mejor nos parezca, pero asegúrate de mantener el nombre del tema y de la plantilla. La plantilla es el nombre del directorio del tema principal.
Ahora, si tenemos nuestro sitio ya personalizado, y no tenemos varias horas libres para sentarnos y mover el código de un archivo a otro, siempre se puede volver a la versión actual de nuestro sitio en un tema hijo. Una vez que hemos tomado la carpeta del tema hijo, sólo tenemos que añadir copias de los archivos que has cambiado hacia este, entonces reemplazar el tema de WordPress con el que está en el repositorio.
No es una solución perfecta pero debería funcionar. El truco está en asegurarse de que tener una copia de seguridad de todo lo que vamos a modificar, para no sobrescribir accidentalmente el nuevo código de la actualización que se instalará en el código antiguo.
🔑 Copia de seguridad de tu página web en WordPress
En primer lugar realiza una copia de seguridad antes y copias posteriormente con frecuencia. WordPress almacena todo lo que ha escrito o ha cargado en su base de datos, y pueden sufrir averías por muchas razones. Es muy fácil perder todo un sitio por un fallo en el servidor o una base de datos corrupta. Afortunadamente, hacer un respaldo sólo te llevará unos minutos.
Hay un montón de maneras de hacerlo. En primer lugar, puedes simplemente copiar los archivos a un ordenador utilizando clientes FTP o Unix Shell Skills.
O bien existen una larga lista de plugins gratuitos para hacer copias de seguridad automáticas, así como opciones de primera calidad. Yo personalmente utilizo Duplicator, el cual es una gran opción para crear y mantener copias de seguridad de su sitio web e incluso para migrar un sitio de servidor de forma sencilla.
Por último, cPanel, Plesk,Direct Admin, Ensim vDeck y Ferozo todos tienen una forma única de hacer copias de los sitios alojados con ellos. Instrucciones detalladas para esto se pueden encontrar en el Codex de WordPress . En el peor de los casos, cuando se pierde algo que realmente necesitamos, puede ponerse en contacto con su proveedor de alojamiento. La mayoría de los alojamientos realizan copias de seguridad de sus sitios, pero puede ser un dolor de cabeza obtener los datos de nuevo con ellos.
▶️ Probar los cambios
Por último, se puede actualizar de forma manual o automática. Con la actualización manual, podemos probar los cambios para ver si se arruina nuestro sitio o no. WordPress trata dos versiones de un mismo tema como dos temas diferentes. Es decir, si tenemos SimpleTheme V1 y SimpleTheme V1.1 en la carpeta wp-content/themes, serán tratados como dos temas diferentes. Esto significa que puede tener múltiples versiones de un mismo tema instalado en tu sitio. Por lo menos, puedes usar esto para cambiar entre la versión personalizada y la nueva, por lo que tienes una referencia si decides reconstruirlo desde cero con temas hijos.
🆗 Conclusión
La perspectiva de perder las personalizaciones que trabajaron tan duro puede ser desalentador, y el proceso de actualización puede parecer una odisea. Pero trabajando con temas hijo, plugins, marcos y un poco de previsión no tiene por que ser una pesadilla. ¿Tienes alguna otra idea para hacer actualizaciones regulares de themes de WordPress sin perder la personalización? ¡Me encantaría oír hablar de ellos en los comentarios!
Luis dice
Hola, gracias de antemano por las recomendaciones dadas, soy nuevo en esto y realice los cambios en style.css del theme de wordpress. Tengo miedo que se sobre escriba el tema, que puedo hacer en ese caso? Saludos
Pedro Mendez dice
Hola Luis. Para no perder los cambios utiliza un plugin para las funciones del theme como puedes ver aquí https://reinspirit.com/creacion-funciones-plugin-funcionalidad-wordpres/. También puedes crear un tema hijo para no perder los cambios como indico arriba en el post. Saludos!
Hola Pedro.
Me gustaría saber cómo puedo cambiar el theme en WordPress de una web que tengo activa a otro theme que he creado y maquetado a mi gusto en local.
Tampoco sabría si cuando haga el cambio, es necesario poner modo de mantenimiento.
Y no sé si al cambiarla se pierde toda la información de la antigua web, como por ejemplo los comentarios en los distintos post del blog antiguo. ¿Tengo que pasar sólo los archivos de la nueva web? También he de “tocar” la base de datos de la antigua web?.
Resumiendo, no sé cómo pudo hacer un cambio de un theme activo a otro theme en local sin perder nada, sin cargarme nada y que todo quedase como estaba a excepción del diseño.
Un saludo y muchas gracias!!
Hola Oscar. Solo tienes que subir el nuevo theme al directorio de themes de tu instalación de WordPress, y luego puedes cambiar el tema desde el panel de WordPress en el apartado de temas. No vas a perder nada en el cambio, y los posts y los comentarios seguirán en su sitio. Si lo quieres poner en modo mantenimiento es opcional a gusto de cada uno. Saludos
Buenas tardes, tengo un theme versión1.3, instalé el Child Them Configurator para crear el tema hijo y hacer modificaciones en los estilos. Ahora acaba de llegar la primera actualización de la plantilla, pero me crea otro template con lo que ahora tengo:
theme versión1.3
themeversión1.3child
theme versión 1.4.
¿Cómo se haría para actualizar a la versión 1.4 si el child está sobre la 1.3?
¿hay que modificar los datos del style.css con la versión nueva en el child?
Muchas gracias!!
Y una duda más. Si ese theme que subo he toqueteado ya el CSS por ejemplo, al activarlo, sigue estando ese CSS?
Un saludo y mil gracias!!!
Si Oscar. Sigue estando porque has modificado el archivo del theme que vas a subir. Saludos!
Eres un crack!!!!! Muchas gracias!!!
Hola, en primer lugar muchas gracias por el articulo y la segunda, es si creo un tema hijo cuando actualice el tema padre, me mantendran el diseño del hijo, pero se actualizan los datos nuevos que ponga en la plantilla?
Un saludo gracias
Hola Amparo. solo se actualizan los datos del tema padre. Los datos que has incluido en el tema hijo se mantienen intactos. Saludos!
Me encanta esta pagina! ya lo he guardado en marcadores, me ayudo para aclarar muchas dudas que tenia. Gracias
Gracias a ti Mabel por comentar. Que pases un buen dia 😉
Hola!
Me estoy encargando de mantener actualizado el wordpress de la página de mi empresa (lo estoy haciendo yo simplemente por motivos económicos).
Me apareció una actualización en un tema, que al parecer no es el tema activo, ya que uno sólo dice «activo» y es un tema creado especificamente para nuestro sitio.
Puedo simplemente actualizarlo sin problemas? Incluso borrarlo? O aunque no diga «activo» puede estar siendo utilizado?
Un saludo!
Hola Rolando. Si el tema no esta activo quiere decir que no se está utilizando en estos momentos y puedes hacer con el lo que quieras, incluso borrarlo. Saludos
Hola Pedro,
Para mantener el orden y estructura del style.css del theme padre y los cambios de estilo en el theme hijo no se combiertan en un caos, lo que hago es:
– copiar todo el CSS del theme padre en el style.css hijo
– ponerlo todo como comentario
– en chrome, firefox previsualizar los cambios que quiero realizar
– descomentar la línea que contiene las reglas css que quiero cambiar
– realizar los cambios en el css
¿crees que es una buena práctica?
¿le ves algún inconveniente?
saludos
Hola Jonan. Me parece buena idea, de esa forma solo haces los cambios que te interesan. Aunque yo en muchas ocasiones lo que hago es poner como comentario una palabra al lado de donde he realizado el cambio. Por ejemplo pongo «modificado» en comentario justo al lado, y luego hago una búsqueda en el archivo con la palabra «comentario» y me lleva donde hice los cambios. Saludos
En la carpeta themes de wordpress hice una copia de un theme que tenía, y a la carpeta le cambié el nombre, pero cuando me voy a Apariencia Temas no aparece esa carpeta con el nombre cambiado, sino que aparece el nombre de la carpeta vieja ¿Cómo le hago para que aparezca en la lista de temas la carpeta nueva?
Saludos.
Hola Francisco. A ver si esto se sirve de ayuda http://foro20.com/wordpress/18460-ocultar-o-cambiar-nombre-del-theme-wordpress.html
Buenas. Amigo te planteo lo siguiente a ver si me puedes ayudar, soy nuevo en este mundo de Wordpress. Yo trabajo para un Periódico que tiene su web montada en Wordpress, el mismo tiene un Tema Premium (Pago), wordpress me está indicando que hay una versión disponible del Gestor de Contenido. Si procedo a actualizar Wordpress, dañaría ese tema Premium? Otra cosa algunos lectores se quejan, que al momento de ingresar a la web, al hacer click en cualquier sección de la web, los redirige a otros sitios, mi servidor web estará contaminado con algún malware. La web se encuentra hospedada en un servidor Godaddy.
Hola Eric. Al actualizar el tema no se daña, pero si se pueden borrar algunos códigos si no estás utilizando un tema hijo o un plugin de funciones. Siempre hay que hacer una copia de seguridad de archivos y base de datos antes de actualizar algo de WordPress. Respecto a lo segundo, si tienes redirecciones a sitios externos que no ha programado ningún administrador del sitio web, es posible que alguien ha inyectado código malicioso en tu sitio. En tal caso tendrás que hacer una limpieza de todo ese código y tomar las medidas oportunas para que no vuelva a ocurrir. Saludos!
¿Y cuando aplicas una actualización a un tema, donde debes hacerlo, en el hijo o en el padre?
Hola neos. Las actualizaciones siempre tienen que ser en el tema padre, para no perder las personalizaciones y el diseño de la web
Hola Pedro, estoy creando una web en WP (es mi primera web en wp) con un diseño muy personalizado, de manera que voy a tocar el código en bastantes archivos, por lo que he duplicado la carpeta completa del theme twentythirteen y la he renombrado con el nombre de mi theme personalizado.
Desde Wp he instalado mi theme personalizado y sobre él estoy haciendo los cambios. Ahora me surge la duda si perderé los cambios al actualizar el theme original (twentythirteen) o al ser una carpeta diferente lo respetará.
¿qué opinas?
Gracias por tu respuesta
Hola Antonio. Si es una carpeta diferente con otro nombre puedes estar tranquilo que no se va a borrar nada con una actualización, ya que se actualizará la carpeta del theme original de twentythirteen
Excelente artículo, como siempre.
Me surge una duda, en caso que la modificación que quiera hacer no es en el tema, sino en algún plugin, como por ejemplo en woocommerce, ¿Cuál consideras que sería las mejores prácticas para no perder las modificaciones cuando se actualiza el plugin?
Gracias anticipadas.
Hola Ederson. Se puede hacer por ejemplo utilizando ganchos (hooks) https://codex.wordpress.org/Plugin_API/Hooks
Hola! Muy buen post! Te cuento mi situación!! me descargue una plantilla paga. Los cambios que realice fueron ,en parte, a través de una hoja de estilos (del tema hijo) que fui subiendo y reemplazando por medio de FTP, otros modificando algunas cuestiones pequeñas desde los archivos .php del tema padre (también a traves de FTP) y finalmente, y a lo que viene mi preocupación, realice modificaciones a mi plantilla desde el panel de wordpress con las mismas herramienta que la plantilla me ofrecia (plugins, theme options,etc.). Entre estos ultimos cambios, se encuentran la creación de nuevas páginas, el menu de navegación, etc. Mi pregunta es la siguiente, aquello que modifique desde el mismo panel de wordpress (paginas,posts con imagenes, etc) , lo perdere por completo cuando actualice el tema???
Hola Felipe. No te preocupes que eso no se pierde. Se pierde solo si has modificado archivos en el theme padre
Muchas gracias Pedro! De mucha ayuda tu respuesta!!
Hola Pedro! Tengo una nueva consulta, no tiene mucho que ver con esto en particular pero si con wordpress y se me ocurre preguntar ya que me ayudo mucho este posteo. Mi duda es si hay alguna manera que cambiar los links de mi pagina ya que me aparecen algunas cosas en ingles y quisiera cambiarlas al español. Por ejemplo me aparece
» http://misitio.com.ar/noticias/page/2/ » ó » http://misitio.com.ar/category/articulossobreneumaticos/ «.. hay alguna forma de cambiar el «page» o el «category» desde algun archivo de codigo?? y ponerlos en español «pagina» «categoria». Esa es mi duda! MUchas gracias
Hola Felipe, en Ajustes > Enlaces permanentes puedes cambiar el nombre a “categoria“, “secciones“, “temas” o lo que sea.
Hola Pedro. Muy buen post tienes felicidades…
Una pregunta, yo tengo el tema hijo de una plantilla. Y he actualizado el tema padre… Ahora he notado que se perdieron los cambios de Apariencia Temas, como lo es el color base del tema, la personalización del menú, la tipografía, los widgets, la configuración de los plugins, etc.
Como se puede solucionar ese caso con el tema hijo? será que me faltó alguna configuración?
Gracias, espero puedas ayudarme.
Hola Noriarman. Pues es bastante raro porque la configuración del theme y el diseño van en el tema hijo y no debe afectar a la actualización de tema padre. Con los plugins pasa exactamente los mismo, cada plugin lleva su configuración y diseño en sus propias carpetas y no se cambian por la actualización de un tema. Has realizado algún otro cambio además de actualizar el tema padre?
Tengo el mismo problema, actualice el tema padre y se me borraron whishets, se me cambiaron los colores todo, porque? si yo tenia todo en mi tema hijo?
Gracias por la ayuda
Hola Penelope. Supongo que tendrías algunos cambios en el tema padre, otra explicación no le veo
Estoy haciendo los ejercicios de un tutorial y creé un theme en la carpeta themes de wordpress y cuando me fui a Escritorio Apariencia Temas ahí aparecio el tema, pero después renombre la carpeta del tema y cuando me fuí a Escritorio Apariencia Temas no aparecio el tema de la carpeta renombrada ¿Qué puedo hacer para que aparezca?
Saludos.
Hola Francisco. Mira en este foro para saber lo que tienes que hacer http://foro20.com/wordpress/18460-ocultar-o-cambiar-nombre-del-theme-wordpress.html
Hola!
He utilizado un child-theme y utilizado mi propio header y footer, me gusta tal como está.
Una pregunta es: Qué pasa si nunca actualizo el tema padre?
Y tengo algunas preguntas, que aprovecho para preguntar por si puedes ayudarme:
– Al dejar un comentario de prueba, y visitar la entrada me aparece
li class=»comment even thread-even depth-1″ id=»comment-3″>
No tengo idea si es porque he tocado algo, o que…
Otra es que tengo una lista MailChimp para la publicación de entradas, instalé el plugin, pero cuando veo tutoriales de MailChimp para publicar me dice como campaña, pero no hay opción para que al dar «publicar» lo envíe automáticamente a mi lista de suscriptores?
Gracias!
Hola Maria. Pues si no actualizas el tema padre no pasa nada. Solo eso que no se actualiza. El tema de los comentarios habria que mirar en profundidad si es un problema de algún plugin que crea algún conflicto con otro, del theme o de varias cosas. El tema de MailChimp no te puedo decir porque no utilizo ese plugin. Saludos
Hola! y perdona que hasta ahora retomo esto.
Dónde podría ver el error que provoca esto en los comentarios? Te envío el link:
http://blog.recodificaturealidad.com/tus-pensamientos-construyen-tu-realidad#comment-2
Lo puedes detectar con una herramienta como firebug
Hola Pedro,
Tengo la siguiente consulta; acabo de actualizar la versión de wordpress 4.5 y me ha desaparecido el menú principal de la web… Tengo una copia de hace una semana que hice vía FTP, pero no tengo muy claro que hacer.
Muchas gracias,
Un saludo
Hola Ger. Si quieres recuperar el diseño anterior tienes que subir esa copia por FTP con el mismo nombre que tiene la carpeta actual. Saludos
Muchas gracias Pedro. El asunto es que justo ayer apareció una actualización del tema con compatibilidad para wordpress 4.5 (vaya casualidad). He subido la actualización y el problema se ha solucionado.
Un saludo
Estupendo Ger, eso que te ahorras. Yo siempre tardo un tiempo prudencial en actualizar los temas por lo mismo, siempre lanzan la actualización y mas tarde la siguiente con los errores de la primera solucionados
hola yo solo me encargo de actualizar el contenido, edito texto y subo archivos…la opcion de vista previa y actualizar pagina en la v. 4.5 no me aprece y no he podido solucionarlo
Hola, actualice la versión de apariencia de nuestra web (Theme Horse, Interface Versión: 1.7) y me modifico toda la pagina y sus sesiones, tengo un backup de la pagina que puedo hacer para que quede con las mismas funciones pero con la nueva apariencia? o que me recomiendas hacer? gracias.
Hola Ana. Pues te recomiendo que el futuro utilices un child theme para que no te vuelva a ocurrir eso. Ahora lo único que puedes hacer es adaptar la web al diseño de la nueva plantilla actualizada
Hola Pedro,
gracias por tu post es de gran ayuda.
Te quería hacer una consulta, sobre lo concerniente al tema child, en este caso que explicas es para modificar la hija de estilo style.css, pero si por ejemplo la plantilla tiene más hojas de estilo, como en el caso que me ocupa, que hay por ejemplo una hoja de estilo que da forma y diseño a muchas partes de la plantilla, en mi caso el alojado en la ruta:
/wp-content/themes/skytheme/assets/css/modules.min.css y modules.css
En este caso habría que hacer lo mismo que explicas en tu post, es decir, crear un modules.min.css y modules.css y guardarlo en la carpeta skyetheme-child?
Muchas gracias.
Saludos,
Hola Jose. Así es, el tema hijo también incluye los archivos .css para incluir la reglas de diseño a la web y que no se pierdan estos cuando se actualiza el tema padre.
Hola…A ver te comento a ver si me podrías ayudar ya que me estoy volviendo loca. Tengo el tema Listify y en la pagina principal ahi dos campos que no están traducidos y por eso instale el plugin codestyling-localization para crear la traducción pero ahora resulta que el plugin no reconoce el tema hijo de listify y no se como cambiar ese idioma porque como bien has subido tu la imagen de arriba el lenguaje no se puede cambiar en el tema hijo verdad???? el problema es que si lo he modificado en el servido en la carpetas lenguajes en el archivo PO, pero no se actualiza en el tema, ni el el hijo ni el en el padre ni nada de nada…¡Por favor necesito tu ayuda!
Un saludo
Hola Mercedes. Si Listify es un tema premium te recomiendo que le escribas a soporte de ese tema para resolver las dudas que te puedan surgir. Saludos