Zen CartからEC-CUBEにデータ移行するときの注意!
2008年09月03日(水)11:46|谷口
谷口です。
弊社で開発中のEC-SYNCではデータ移行に伴うデータ変換を半自動的に行います。テスト中、Zen CartからEC-CUBEに移行したデータが、期待したとおりの動作をしないことがありました。今回はその一例として、商品カテゴリデータの移行時の注意点をご紹介します。
対象となるデータ
| Zencart | EC-CUBE |
| categories.sort_order | dtb_category.rank |
これらはそれぞれ各システムの商品カテゴリの表示順序を定義していますので、そのまま移せば良いように思えます。 実際、EC-CUBEからZen Cartへの移行はそのまま対応するデータを移すだけで問題ありません。
なぜZen CartからEC-CUBEへの移行時に問題になるのか?
それは、プログラム上での処理に以下のような違いがあるためです。
- Zen Cart では各階層ごとでの順序付けに使用される
- EC-CUBEでは全体の順序付けに使用される
上記のような扱われ方をしますので、サブカテゴリがなければ問題ないのですが、 サブカテゴリがあるとEC-CUBE上で表示がおかしくなってしまうことがあります。
例えばZen Cartのサンプルデータの値をEC-CUBEにそのまま移すと下図のようになってしまいます。
なので、Zen Cartのsort_orderを元にEC-CUBEのrankを適切に設定する必要があります。 弊社で開発中のEC-SYNCではちゃんと下図のように正常に移行されます。

