Cómo actualizar Magento a 1.4.0.1.

logo de magentoHola, me llamo Rafa y a partir de ahora voy a escribir en el blog. Soy desarrollador web, y los temas que voy a tratar van a ser los que trabajo diariamente: mayoritariamente software opensource para crear portales y tiendas de comercio electrónico, y todas las cuestiones que giran alrededor de esto.

Se me ha ocurrido que la mejor manera de empezar es presentando mi primer artículo, que explica cómo actualizar el software de comercio electrónico Magento de la versión 1.3.2.4 a la última 1.4.0.1, problema con el que muchos desarrolladores y webmasters estamos lidiando últimamente. Ahí va.

La actualización a la última versión de Magento es más o menos sencilla según los módulos y templates que tengamos instalados o desarrollados en la tienda y si son o no compatibles con la nueva versión, pero no tendremos ningún problema si seguimos una serie de pasos que describo a continuación:

  1. Hacer un backup del sistema de ficheros y de la base de datos. Puedes usar:

    #para hacer un backup
    mysqldump -- opt --user miusuario –-pass miclave mibase > backup.sql
    #crear una nueva base de datos a partir del volcado
    mysql --user miusuario --password miclave mibackup < backup.sql
    #para crear una copia de seguridad del sistema de archivos
    cp –rp ruta_antigua_magento ruta_backup_magento
    
  2. Haz una instalación limpia de Magento en su última versión 1.4.0.1. El siguiente enlace te puede ayudar: http://www.magentocommerce.com/wiki/groups/227/installing_magento_via_shell_ssh

  3. Copia toda la información de imágenes del catálogo a la nueva instalación de Magento. Esta información se encuentra en la carpeta “media” y todos sus subdirectorios. Una buena manera de hacer esto es:

    #sobreescribe la carpeta que contienen las imágenes del catálogo, recursivamente y manteniendo los permisos de los archivos
    cp –rp ruta_antigua_magento/media ruta_nueva_magento
    
  4. En la copia de la base de datos que hemos creado, cambia los dos campos relativos a la base_url en la tabla core_config_data, apuntando a la nueva instalación de Magento que hemos hecho.

  5. Una vez instalado, hay que enlazar el nuevo sistema de archivos con la base de datos que hemos creado anteriormente, donde tenemos toda la información de productos, pedidos, configuraciones, etc. Esto se consigue editando el fichero de configuración situado en app/etc/local.xml de la estructura de archivos de la nueva instalación. En default_setup encontraremos los campos que tenemos que editar para que apunte a la base de datos que contiene toda la información de la tienda.

  6. Accedemos mediante un navegador a cualquier página de la nueva instalación, que ahora apunta a nuestra base de datos que pertenece a una versión anterior de Magento. El sistema detecta esto, y actualiza la estructura de tablas a la versión 1.4.0.1. Con esto conseguimos tener a última versión de Magento, conservando la información de catálogo, configuraciones, etc, que teníamos en la tienda.

  7. Vamos a cambiar la configuración del template de Magento. Como hemos copiado las configuraciones que teníamos en la tienda guardadas en la base de datos, seguramente tengamos seleccionado un template que no existe en la nueva instalación. Para solucionar esto vamos a Sistema->Dieño y seleccionamos Base-default en el backend de Magento.

    Ahora podremos acceder la tienda, veremos que la información del catálogo y las configuraciones siguen intactas, pero podemos disfrutar de las nuevas características de la nueva versión. Sin embargo, los módulos y templates que teníamos instalados se han perdido. Vamos a solucionar esto.

  8. En este paso reponemos los módulos y extensiones que teníamos en la tienda antes de hacer la actualización. Los módulos y extensiones se encuentran en las carpetas “app/code/local” y “app/code/community”. Podemos copiar el contenido de estas carpetas de la instalación antigua a la nueva instalación:

    cp –rp ruta_antigua_magento/app/code/local ruta_nueva_magento/app/code
    cp –rp ruta_antigua_magento/app/code/community ruta_nueva_magento/app/code
    

    Tendremos que asegurarnos también que por cada módulo copiamos el archivo xml respectivo que se encuentra en app/etc/modules. Esto lo haremos a mano, uno por uno, para no sobreescribir archivos del sistema.

    Es posible que hayan módulos que no sean compatibles con la nueva versión, en cuyo caso nos tocará reimplementarlos, o esperar a que saquen la actualización de los mismos. En el caso de los templates, casi con total seguridad que tu template va a ser incompatible. En este caso, consigue uno nuevo que sí lo sea o implementa el tuyo propio.

  9. Cuando estés seguro que la tienda funciona correctamente y no hay problemas de incompatibilidades con la nueva versión de Magento, procede a apuntar la url de producción de la tienda a la nueva instalación que acabamos de crear. Además, tendrás que modificar los campos relativos a base_url de la tabla core_config_data, con los nuevos valores.

Siguiendo estos pasos, espero aliviar algún dolor de cabeza a desarrolladores de tiendas Magento.

Un saludo y feliz actualización.

Compartir:
Abrir chat
¿Tienes alguna duda que podamos aclarar?