Algunas versiones anteriores de PrestaShop 1.7.4.x presentaron problemas en procesos importante como son la actualización entre versiones, algo que quedó explicado en el artículo de este Blog sobre el upgrade de PrestaShop 1.7.4.0 a la 1.7.4.1. Esto ha llevado al equipo de desarrollo a liberar PrestaShop 1.7.4.2 que está disponible con mejoras.
Por ejemplo, si la directiva allow_url_fopen no estaba habilitada en el archivo php.ini de la cuenta de Hosting donde se gestiona la instalación, no era posible actualizar entre versiones 1.7.x correctamente.
Esta nueva versión parchea todos los problemas conocidos que afectaban al actualizador, lo que incluye el funcionamiento del módulo 1-click upgrade para que sea posible actualizar a la versión estable sin problemas.
Tabla de contenidos
Mejoras y correcciones
Hay 3 correcciones importantes que afectan al proceso de actualización entre versiones 1.7.x y al uso de la directiva allow_url_fopen si esta no se encuentra activada en el servidor, lo que ha implicado corregir que el uso de esta directiva en el proceso de upgrade de PrestaShop sea obligatorio y pasa a ser opcional.
Se han solucionado más problemas detectados que afectan a Smarty, como por ejemplo que el módulo de traducción no funcionase adecuadamente en el modo de “Smarty Extendido”.
También fueron detectados errores AJAX al añadir productos al carrito que han sido solventados.
Si quieres conocer los detalles de los 20 errores y/o problemas corregidos, puedes consultar la lista completa de mejoras y cambios aplicados en el changelog de esta versión:
Requisitos de PrestaShop 1.7.4.2
Para que PrestaShop tenga un correcto desempeño tienes que prestar atención a los requisitos que debe cumplir el servidor donde alojes tu tienda:
- Versión PHP mínima: 5.6.30. Solo para PS 1.7.0
- Versión PHP recomendada: 7.1 Para PS 1.7.0 a 1.7.3 (Funciona más rápido).
- Versión PHP para PrestaShop 1.7.4.2: 7.2.
- Accelerators: No requerido (1)
- magic_quotes_gpc: off
- memory_limit: 512M
- max_execution_time: 300
- max_input_time: 300
- upload_max_filesize: 20M
- post_max_size: 20M
- max_input_vars: 10000
- allow_url_fopen: on (Activado permite importar imágenes).
- safe_mode: off
- cURL: (Con cURL instalado pasarelas como Paypal y otras funcionan sin problemas).
- mod_rewrite: instalado y activado.
- mod_security: off
- JSON: ON
- ctype: ON
- mySQL: 5.7 o superior (mejor rendimiento con mariaDB).
- mySQL: INNODB (myIsam no funciona correctamente).
- php.ini: (Debe incluir date.timezone).
- Open SSL: Versión 1.0.2 o superior.
- Servidores: Linux (Prestashop no es recomendable para servidores de Windows/IIS).
- cageFS y otro Firewall técnico en el servidor configurado correctamente para que en el backoffice no sea muy lento el bloquear los servicios externos que usa Prestashop.
- suhosin.request.max_vars = 20000 o superior.
- suhosin.post.max_vars = 20000 o superior.
- max_input_vars = 20000 o superior
Adicionalmente se recomiendan las siguientes configuraciones para Opcache:
- opcache.revalidate_freq = 0
- opcache.validate_timestamps = 0 (comentar esto en entorno de desarrollo).
- opcache.max_accelerated_files = 7963
- opcache.memory_consumption = 192
- opcache.interned_strings_buffer = 16
- opcache.fast_shutdown = 1
(1) Es más recomendable utilizar fpm-php + opcache + fast-cgi y ngnix proxied.
Para más cantidad de productos es posible que los recursos mínimos no sean suficientes.
Actualizar a PrestaShop 1.7.4.2
Antes de actualizar realiza una copia de seguridad. Si dispones de un módulos de backups para PrestaShop úsalo para hacer la copia, si no tienes ninguno sigue estos pasos.
Proceso resumido de actualización de PrestaShop:
- Desde tu Panel de Hosting comprueba que los archivos y carpetas de la web de PrestaShop tiene los permisos adecuados (755, 644)
- Si eres Cliente de Webempresa, ejecuta Stephan desde tu Área de Cliente para que verifique los permisos de la web.
- Accede al backoffice de tu Tienda PrestaShop 1.7
- Ve a Personalizar, Módulos, Módulos instalados.
- Comprueba que tienes instalado el módulo “1-Click Upgrade” (Actualización en 1-Clic) versión 4.0.0. 1
- Si el módulo está instalado accede directamente a Más, 1-Click Upgrade (menú izquierdo).
- Activa el Modo Mantenimiento, de lo contrario no podrás actualizar.
- Comprueba en Comenzar Actualización que existe una versión nueva disponible superior a la instalada.
- Haz clic en el botón azúl ¡ACTUALIZAR PRESTASHOP AHORA!.
- Espera a que concluya el proceso, puede tardar.
- Concluida la actualización verifica que el aviso de actualización es correcto.
- Haz clic en el menú izquierdo Inicio.
- Accede de nuevo al BO (habrás perdido la sesión tras actualizar).
- Desactiva el Modo Mantenimiento (opción superior derecha del BO).
- Ve a Configurar, Parámetros Avanzados, Rendimiento y haz clic en Borrar la caché.
- Comprueba el funcionamiento del back y del front office de la Tienda.
Si todo ha ido correctamente ¡Felicidades! ya has actualizado a la versión estable y deberías ver esta pantalla.
Haz clic en la imagen para ampliarla
1 Si no tienes instalado el modulo Actualización 1-click localízalo en Módulos, Módulos y Servicios, y búscalo utilizando el buscador e instala concretamente la versión 4.0.0 que es la que actualmente recomienda el equipo de PrestaShop.
Haz clic en la imagen para ampliarla
Esta actualización afecta a 72 archivos que serán modificados y 1 archivo será eliminado (si existe).
Solución a posibles problemas de actualización
Si durante el proceso de actualización desde versiones 1.7.x anteriores se presentan errores y la actualización no concluye, es posible que esté causado por AJAX en el módulo 1-click Upgrade” de la versión actual 3.0.5 que presenta errores con upgradeFiles
y rollback
si se pretende “revertir” la actualización tras el intento de upgrade.
No se recomienda el uso de la versión 3.0.5 del módulo 1-Click Upgrade.
Se ha comprobado en diferentes instalaciones que la Tienda queda funcionando con normalidad tras la actualización a la nueva versión.
Vídeo de Actualización de PrestaShop
En este vídeo te muestro como actualizar una tienda con la versión 1.7.4.1 a la versión estable actual 1.7.4.2, usando el método del módulo Actualización 1-click poniendo antes la web en “modo mantenimiento”.
Recuerda que ante fallos o errores tras actualizar, que sigan permitiendo trabajar en el BO, siempre puedes usar la opción Revertir para volver al momento anterior a la actualización.
Sobre PrestaShop 1.6.x
PrestaShop 1.6.x sigue siendo una versión estable y recibe actualizaciones de seguridad y mantenimiento hasta octubre de 2018 pero no se le aplican nuevas mejoras o funcionalidades a esta rama.
El módulo 1-click Upgrade” versión 4.0.0 debería permitir actualizar una Tienda PrestaShop 1.6.x a la rama 1.7.x, en su versión más estable, pero de momento sigue siendo inseguro y no recomendable aplicar este tipo de actualización en una tienda en producción.
La recomendación es mantenerse en versiones “estables” en la rama en la que se encuentre tu instalación, y que esperar a que se libere el modulo “oficial y estable” de 1-click Upgrade para hacer la migración de forma segura.
Otra opción es exportar en CSV de la versión 1.6.x e importar en una instalación limpia 1.7.4.2 y realizar los ajustes pertinentes. Esto implica que tendrás que plantearte el cambio de Tema (plantilla) de la tienda para evitar innumerables incompatibilidades..
Conclusiones
Actualizar desde PrestaShop 1.7.x a la versión estable 1.7.4.2 es un proceso que puedes realizar de forma segura, previa copia de seguridad, utilizando la versión indicada del módulo de actualizaciones, y esto no debería romper las funcionalidades de la tienda.
Pero si una actualización rompe funcionalidades que son necesarias para el correcto desempeño de tu tienda, puedes optar por mantenerte en la versión bajo la que si funciona la tienda y permanecer a la espera de nuevas versiones que mejoren el funcionamiento de la web pero no rompan sus funcionalidades.
En Agosto de 2018 será liberado PrestaShop 1.7.5.0 y esperamos que esta versión traiga mejoras y el esperado módulo “estable” de transición entre ramas.
¿Te ha resultado útil este artículo?
Miembro del equipo de soporte técnico de Webempresa.
Coordinador de contenidos en el Blog y en Youtube.
Soporte técnico en CiberProtector. Teacher en Webempresa University