Magento 2.3 release is one of the key highlights of the year for the Magento community. With this launch, Magento has added new tools to help merchants grow their business, and empower developers to fulfil client expectations with more concrete results.
As a result, stores would be able to deliver a higher level of services to their customers and thus see an increase in revenues and the number of returning customers. Let’s go through the features of this Magento 2.3 release and see how it would add more value to Magento stores.
Magento 2.3 Release – Features & Updates
First, a little about Magento 2.3 features. The new release has promised to improve Magento in multiple ways including security, scalability, and performance.
What’s new in Security?
Security has always remain the number one concern of the Magento community. With the 2.3 release, it is easy to see the emphasis the Magento development team has placed on security.
To protect against malicious users who might have obtained store accounts’ password, Magento 2.3 has implemented two-factor authentication. Think of it as an added layer of security to hack-proof your store by asking the users to prove their identity by entering a security code that’s sent to their registered phone number.
With a built-in mechanism for detecting malicious and SPAM-related activity, the Google reCAPTCHA tool allows merchants to keep their key web pages secure from bots and malicious users.
Cache Management ACL:
Magento has improved the advanced caching feature, and it now offers more options to tweak and manage the store cache. In this 2.3 release, the dev team has added several new options to this module such as advanced cache permission and access controls.
What has Improved in Performance?
With every new release, the community expects a visible improvements in Magento performance. With this release, the dev team has not disappointed the users.
Scale Your Magento 2 Store With Ease
One-Click Magento installation with your own managed hosting solution.
PHP 7.2 Support:
Magento has upgraded the base version from PHP 7.0 to 7.1.3. Now as PHP 7.2 is the latest version, with this change, Magento 2.3 can benefit from all the features that PHP 7.2 supports including improved security, better performance, and access to the latest PHP features for developers.
Since PHP 7.2 has dropped support for mCrypt (PHP’s go-to encryption module), Magento 2.3 offers support for Libsodium module, which offers enhanced encryption for PHP 7.2.
More Functionalities for Developers
With this 2.3 release, Magento developers could benefit from new features that saves time and simplifies project development flows.
Progressive Web Apps (PWAs) Studio:
A PWA (Progressive Web App) is actually a website that functions as a mobile app. PWA eliminates the need for developing a native mobile app. Rather, a single app functions both as a mobile app and a web app. The layout would be different as per the requirements of setting up the frontend to the screen size. It also allows caching of data so the website/app continues to function in the offline mode.
PWA Studio enables merchants to deliver better mobile experiences – indirectly boosting the store conversion rates and increasing engagement. PWA Studio now lets developers use standard themes without the need for separate customization for mobile and web.
PWA Studio also speeds time to market websites and lowers the total cost of ownership. Since PWA Studio is an open source framework, so developers can hope to receive regular updates, independent of the future Magento release schedule.
GraphQL is a query language for using APIs. With the rise of the PWAs, developers have seen an increase in the API and data requests in their projects.
GraphQL allows the requestor to send a specific number of queries, or to chain multiple requests to get multiple data sets/information in near-real time.
This API is the replacement of REST and SOAP web APIs for custom frontend development, including the storefronts and PWAs. For the support of GraphQL, Magento has written a completely new layer that interacts directly with GraphQL API.
One major feature in Magento 2.3 release is the release of page builder in Magento’s native CMS. Page Builder adds features such as drag-and-drop interface; a different set of content types like images and videos; and a preview functionality which will allow non-technical users to manage their content on their own.
With this Page Builder, everyone can create a new page, edit products, and categories, and update the content quickly and easily without the help of any technical resource.
Page Builder is fully functional in Magento 2.3 and features a media gallery and widgets so that these assets can easily be integrated within your pages. Page Builder can also be used to create your own dynamic content block that can be used throughout the site, and with staging and preview functionality, content can be scheduled to go live as and when required.
Asynchronous API: The new scalable APIs enable better control over the timing and execution of API calls. Moreover, it now works with greater volume, and without waiting for all previous operations to complete. All of this allows faster performance integration and requires fewer API calls in scenarios such as a bulk product integration or customer import.
Multi-Source Inventory (MSI): This feature helps merchants improve operational efficiency by managing inventory across multiple physical locations through a single Magento admin. Additionally, merchants can:
- Manage products and their quantities of multiple fulfillment sources including stores, warehouses, distribution centers or third-party drop shippers.
- MSI allows the management and tracking of inventory for multiple sources.
- You can now prioritize your operations and control the inventory source through automated processes and pre-defined rules that are used to fulfill orders for each source in real time.
- Users can easily integrate third-party inventory systems easily.
Even store owners with only one inventory source can benefit from MSI with an inventory reservation system that tracks products already added to carts by deducing the quantities from the stock. This would result in accurate stock management and improve conversion rates by high performing checkouts.
Elasticsearch: Before this release, Elasticsearch was only limited to Magento Commerce but now it has been extended to Magento Open Source. Elasticsearch empowers Magento’s site search by adding search capabilities that include filtering by attributes.
Now that you have gone through the latest Magento 2.3 features, you might be interested in how to upgrade your Magento store to the latest version.
Upgrade Your Store to Magento 2.3
Note: Before moving to Magento 2.3, I recommend you to go through system requirements for this release as it may require you to make a few upgrades to your hosting setup.
Step 1: Enable Developer Mode
To enable developer mode, simply use the following command.
php bin/magento deploy:mode:set developer
Step 2: Upgrade to Magento 2.3.0
Next, you have to upgrade to the latest version through the following command:
composer require magento/product-community-edition 2.3.0 --no-update
Step 3: Update Composer
Now, update Composer by running the following command:
During the update, the required resources for Magento 2.3 will be downloaded and installed.
Fix the Error in Magento 2.3.0
It is possible that during the upgrade, you might face an error. If this is not the case with you, skip to the Step 4.
This error occurs because Magento doesn’t allow the update for composer.json. As a result, an error is thrown when you try to automatically upgrade the Magento version. So, for Magento 2.3 release, you have to make a few changes to upgrade to the latest version.
This solution to this error is available in this article. In a nutshell, use the following commands to upgrade to Magento 2.3.0.
composer config preferred-install dist composer config sort-packages true composer config prefer-stable true
Now, let’s fix the composer.json file in Magento.
composer require --dev friendsofphp/php-cs-fixer:~2.10.0 --no-update
composer require --dev sebastian/phpcpd:~3.0.0 --no-update
php -r '$autoload=json_decode(file_get_contents("composer.json"), true); $autoload["autoload"]["psr-4"]["Zend\\Mvc\\Controller\\"]= "setup/src/Zend/Mvc/Controller/"; file_put_contents("composer.json", json_encode($autoload, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));'
Now go back to Step 2 to start the process again and hopefully, no more errors will occur during the installation process.
Step 4: Run the Upgrade Command
php bin/magento setup:upgrade
After the successful upgrade to Magento 2.3, login to Magento admin panel and explore the latest features.
Magento 2.3.1 Release:
In Magento 2.3.1 release they have make major improvement in security related to cross-site scripting, arbitrary code execution, and sensitive data disclosure vulnerabilities as well as other security issues. The release of Magento 2.3.1 also includes powerful new merchant and developer experience enhancements and multiple performance improvements. For further Magento 2.3.1 release you can refer to Magento release note.
Magento 2.3.2 Release:
Magento 2.3.2 was released on June 25, 2019 which had added some new features and some major fixes which were essential to make magento a better platform. This Magento 2.3.2 release has 200 functional fixes in the core product, 350+ pull requests contributed by Magento community, and 75+ security enhancements. These advancements and fixes were made to majorly improve Magento performance, security, infrastructure, merchant and vendor tool enhancement. For further Magento 2.3.2 release you can refer to Magento release note.
This Magento 2.3 release appears to be a step in the right direction. With the new features and upgrades to the existing components, this release will help increase the Magento’s market share and improve the experience for both the merchants and visitors.
Abdur Rahman is the Magento whizz at Cloudways. He is growth ambitious, and aims to learn & share information about Ecommerce & Magento Development through practice and experimentation. He loves to travel and explore new ideas whenever he finds time. Get in touch with him at [email protected]