All Magento Commerce 1.x versions will reach their end of life (EOL) on June 30, 2020 as per Magento official site. Means, there won’t be any security patches and quality fixes after June, 30 2020. Thousands of merchants across the globe have already migrated their Magento version to Magento 2 and many online stores are currently being migrated by different individuals or groups of Magento developers.
Obviously, migrating from M1 to M2 isn’t an easy or simple task as M2 architecture is completely different from M1 and even after using Magento official tools for this migration, we may require lots of development efforts depending on how M1 site is developed. In this article I will try to cover some important steps for migrating from Magento 1 to Magento 2 using Magento official tools with some of their details. This will give you an overview of all migration requirements and possibilities. So, let’s get started.
According to Magento official migration guide there are different components involved in migration as:
- Themes and Customization
- Extension and Custom Code
I will cover these components based on how much we can migrate starting from a lower amount.
Themes and Customization
As I mentioned earlier that magento uses a different architecture in Magento 2 so migration of themes is not possible without creating or modifying M2 theme. Developers will need to make changes to their M2 themes as per Magento 2 themes and layout documentation.
Extensions and Custom Code
Magento has developed a very effective Code Migration Toolkit which enables developers to convert their M1 module code to M2 module. As per the official documentation the toolkit is intended for Magento developers with reasonable expertise in both M1 and M2. The toolkit covers migration of the following M1 code:
- Module directory structure
- Layout XML files
- Config XML files
- PHP files
At the time of writing this article this toolkit doesn’t support conversion of theme code.
According to Magento official documentation:
The toolkit can significantly reduce the work involved in the code migration. However, after running the toolkit one will need to manually edit some of the generated files.
Many of Magento tech partners and Magento extension developers have already developed a M2 version of their extensions
Other than this toolkit, many of Magento tech partners and other Magento developers have already developed a version of their extension for M2 and they are already available on their websites and Magento marketplace. Those extensions can be installed and set up from scratch on M2 sites.
Data is the most significant component for any merchants or store owner and this must not be compromised and must be migrated. Magento has developed the Magento 2 Data Migration Tool to efficiently migrate all data from Magento 1 to Magento 2 including products, categories, customers, orders, other transactions, store configuration, CMS and promotions.
This Data Migration Tool is a CLI and required to install in M2. As per its official documentation:
Data Migration Tool is a command-line interface (CLI) used for transferring data from Magento 1 to Magento 2. The Tool verifies consistency between Magento 1 and 2 database structures (tables and fields), tracks the data transfer progress, creates logs, and runs data verification tests.
The tool has several different modes which enables developers to capture incremental data from M1 stores which are added while running previous migration modes without any conflict or glitch.
Apart from database records, you will also need to copy your M1 media into M2 where M1-root/media should be gone to M2-root/pub/media.
Even after using several effective tools from Magento, developers are still required to create/install themes, do customization, review code and make changes accordingly. The migration process can’t be estimated in general as it depends on M1 site development.
Code Migration Toolkit: https://github.com/magento/code-migration
Data Migration Tool: https://github.com/magento/data-migration-tool
Official Migration Docs: https://devdocs.magento.com/guides/v2.4/migration/bk-migration-guide.html
I hope you found this helpful. Thanks for reading this.