How to migrate my menu to a new PrestaShop installation ?
First of all, please note that Advanced Top Menu data migration is only possible if the catalog identifiers in the database are STRICTLY identical (products, categories, etc...). If the identifiers are not the same, then migration will not work.
Transfer the menu with a JSON file
If your version provides the Import/Export tab, you can transfer the menu, global and mobile settings, or both. This feature is available from version 1.14.
- In the source shop, open Import/Export, select the data to export and keep the generated JSON file.
- In the destination shop, install a compatible module version that provides this tab. Before importing, export its current menu and configuration to keep a copy.
- Select the JSON file, read and tick the replacement confirmation, then start the import.
When the imported menu contains tabs, it replaces the existing menu: those tabs are not added to the tabs already there. The configuration section applies the settings it contains. Importing does not convert catalogue IDs: categories, products, manufacturers, suppliers, CMS pages and other referenced destinations must have the same IDs in both shops.
Direct database transfer
Ask your integrator to carry out a SQL copy. They should back up both databases and check version compatibility and the multi-shop context before transferring data.
- Connect to the source MySQL database through phpMyAdmin.
- Copy the module tables to the destination database: their names start with the shop’s actual database prefix followed by
pm_advancedtopmenu. Adjust this prefix to match the destination if needed. - Copy configuration entries whose names start with
ATMfrom the source configuration table to the destination table. The nameps_configurationassumes aps_prefix; use the prefix of each installation.
Don't forget that for this copy to be consistent with your original version, you'll need to have the same identifiers for products, categories, CMS pages, etc., otherwise the migration won't work.
Have your integrator coordinate the module installation and data transfer, then check that the menus have been restored in the destination shop.
Also transfer images and custom CSS
The JSON file does not include menu images. Copy the menu_icons, column_icons and element_icons folders separately from modules/pm_advancedtopmenu/ to the module directory in the destination shop. Check these files when using a SQL copy too.
Also keep a copy of the custom CSS entered in Advanced styles: it is stored in a separate file and is not included in the JSON export or copied database tables. Have these rules reapplied after checking their compatibility with the destination theme; in multi-shop mode, check each affected shop.
Finally, open the main menu links and check images and desktop and mobile layouts in each relevant language and shop.