¡Hola a los clientes de Amasty y a la comunidad de Magento!
Esta es una nota importante que quería compartir con usted tanto para explicar los problemas que podría haber enfrentado como para evitar este problema en el futuro.
Recientemente, hemos recibido muchas solicitudes de soporte similares sobre este error, que influye tanto en la funcionalidad de Magento como en el rendimiento correcto de las extensiones de Amasty.
Product.OptionsPrice error en Magento 1.9.3.1
Después de actualizar a Magento 1.9.3.1, puede aparecer el siguiente error en la página del producto:
TypeError no detectado: Product.OptionsPrice no es un constructor
Funciones que pueden verse afectadas por este error:
- Funcionalidad de actualización de precios de Magento
- Funcionalidad de cambio de precio en Amasty Color Swatches Pro
- Visualización del estado del stock personalizado en menús desplegables para el estado del stock personalizado de Amasty
- Visualización de un campo de suscripción de opción configurable en Amasty Out of Stock Notification
Motivo del error
Con la nueva versión, Magento movió un constructor de clase Product.OptionsPrice de varien/product.js a varien/product_options.js .
Además, agregaron este archivo a la página del producto a través de diseños:
aplicacióndiseñofrontendrwddefaultlayoutcatalog.xml
appdesignfrontendbasedefaultlayoutcatalog.xml
<método de acción=”addJs”><script>varien/product_options.js</script></action>
Como resultado, después de actualizar su versión de Magento, el archivo product.js ya no incluye el código con la inicialización de Product.OptionsPrice . El nuevo archivo tampoco se usa porque los archivos del tema no se actualizaron junto con la actualización de la versión de Magento.
Cómo corregir el error
Para evitar recibir este error después de actualizar su versión de Magento, recomendamos el siguiente flujo de trabajo:
- Actualice su tema a una versión que sea compatible con Magento 1.9.3.1.
- Si no hay una actualización de tema relevante disponible, vaya a appdesignfrontendyourpackageyourthemelayoutcatalog.xml , busque la sección <catalog_product_view translate=”label”> e inserte <action method=”addJs”><script> varien/product_options.js</script></action> después de esta línea: <action method=”addJs”><script>varien/product.js</script></action>
No olvide vaciar la memoria caché de Magento después de estas acciones.
Nota: siempre recomendamos realizar actualizaciones de temas y versiones de Magento en un servidor de prueba con copias de seguridad y probar las actualizaciones antes de hacer cualquier cosa en una tienda en vivo. Si no está seguro de lo que está haciendo, consulte a un profesional.
Gracias por leer, y estaré encantado de responder cualquier pregunta en la sección de comentarios.