🚀 OpenMage 21 is the next step in the evolution of our beloved M1 platform. 🚀
📢🔔 While V21 introduces breaking changes that require careful consideration during the upgrade process, these long-overdue modifications will ultimately bring significant benefits to your stores. In the long run, you can expect enhancements in performance, security, SEO scores, and more, making the transition worthwhile. 📢🔔
Changes you must know and that you have to check one by one
- PHP8.2 is now the minimum required version for OM v21
- Added form key validation to Contacts form
Checkapp/design/frontend/base/default/template/contacts/form.phtml
in your theme and be sure that you've<?php echo $this->getBlockHtml('formkey') ?>
under the<form
opening tag, as shown here. - Unified CSRF configuration
If you enabled CSRF inSystem -> Configuration -> System
(which you should!) then it will be enabled for all your forms and the checkout. - Removed double span element from HTML buttons
Be sure to check your CSS styles for the buttons in your frontend theme, you may need to adjust them slightly. - Removed all deprecated
_Mysql4_
classes
This will break many extremely old modules but it was long overdue and allowed us to remove 500+ obsolete files from the core. We provide theshell/rename-mysql4-class-to-resource.php
migration script to fix the old modules, you will have to run it but make sure you'll do it in a test environment and thoroughly test everything before publishing to production. - Removed
decorate*()
js functions
Check the phtml files of your custom themes for javascript code callingdecorate*()
(decorateList, decorateTable, decorateGeneric etc) and remove those calls since they will generate javascript errors on your browser's console. - Removed "admin routing compatibility mode" for extensions
The new admin routing mode was implemented in Magento 1.4 for security reasons, together with "compatibility mode" (in order to allow some time to developers to update their modules). After these many years we are removing the compatibility mode and all extensions will have to follow the new admin routing mode or they will not appear in the backend. - Removed
scriptaculous/dragdrop.js
from frontend
Changes you want to know about
- RWD theme: updated jQuery to 3.7.1 by @fballiano in #3922
Changes that probably won't affect you
- RWD theme: removed
enquire.js
and converted to window.matchMedia by @fballiano in #3208 - RWD theme: converted default logos to SVG (and removed some Magento names) by @fballiano in #3148
- Removed onmouseover/onmouseout from adminhtml menu by @luigifab in #2737
- Fixed implementation of SessionHandlerInterface in Mage_Core_Model_Resource_Session by @fballiano in #3499
- Rewrote
js/varien/weee.js
without prototypejs by @fballiano in #3670 - Rewrote
js/varien/accordion.js
without prototypejs by @fballiano in #3669 - Rewrote `js/mage/captcha.jsp without prototypejs by @fballiano in #3754
- Removed unused file
js/mage/adminhtml/scrollbar.js
by @fballiano in #3765 - Removed unused file
js/mage/adminhtml/magento-all.js
by @fballiano in #3764 - Removed unused file
js/mage/adminhtml/image.js
by @fballiano in #3758 - Removed deprecated and unused files from lib/Mage by @fballiano in #3872
- Rewrote
js/mage/adminhtml/hash.js
using native javascript by @fballiano in #3763 - Rewrote
js/mage/adminhtml/variables.js
without prototypejs by @fballiano in #3762 - Rewrote
js/mage/translate.js
without prototypejs by @fballiano in #3662