Commerce Migrate is a general-purpose migration framework extending Migrate Module for bringing store information into Drupal Commerce.
- Migrate destination field handlers for commerce fields (reference fields, price field)
- Migrate destination plugin for commerce product types.
- A submodule (commerce_migrate_ubercart) providing the beginnings of an upgrade path from Ubercart to Commerce
Commerce Migrate depends on Migrate Extras for Entity API integration.
Commerce Migrate Ubercart
Commerce Migrate Ubercart is a submodule that can migrate 6.x and 7.x Ubercart stores from either the existing Drupal database or a remote database.
Visit admin/content/migrate/ubercart_migration_options to configure import options, including the source database and filesystem locations.
Please read the README.txt in the commerce_migrate_ubercart directory. There are specific requirements for setup before a migration.
What currently works:
- Product types are created from ubercart product classes.
- Each product type gets its own migration.
- Product image migration.
- Each product type gets its own node migration, which creates the matching product_display nodes.
- Customer billing profiles are created from the billing info of each ubercart order.
- Orders (and line items) come through.
What doesn't work yet:
- Attributes
- Taxes
- Handling the case when the target product type / sku that we're creating already exists.
- There are a number of things that will never be able to be addressed, as with all migrations. Every migration will require review and work on the migrated store.
The development roadmap is in #1212158: Development Roadmap for Commerce Migrate Ubercart
Your experiences and needs are invited in the issue queue. You may need to provide a database for testing. There's no guarantee that every permutation can be addressed, of course.
When should you use Migrate/Commerce Migrate vs Feeds/Commerce Feeds?
In general, you'll use Feeds and Commerce Feeds when there's a one to one mapping between the input data and the entities you're importing. So Feeds is fantastic for importing products from a CSV file, for example. For Commerce Feeds see this article/screencast. It's not very strong in transforming data on the way in though. Much of the time a feeds migration can be done without touching any code.
Migrate and Commerce Migrate, in general, know how to transform things mightily, with the full power of SQL and PHP, on the way in. So you *can* do something like an Ubercart to Commerce migration, and you can solve the problems of a specific migration. So Migrate is the solution for more complex migrations, and it's the home of Commerce Migrate Ubercart, which solves some of the Ubercart migration issues. There's an article/screencast on that here. Much of the time a *migrate* migration will require writing PHP code.
Resources
- Demonstration screencast
- Presentation from Drupalcon London 20011
- The Migrate handbook page
- The Migrate examples included in the Migrate module
- http://cyrve.com/import
- http://www.gizra.com/content/data-migration-part-1
- http://www.gizra.com/content/data-migration-part-2
Downloads
Project Information
- Maintenance status: Actively maintained
- Development status: Under active development
- Module categories: E-commerce
- Reported installs: 97 sites currently report using this module. View usage statistics.
- Downloads: 959
- Last modified: February 27, 2012