開發 OpenCart 直接轉入 WooCommerce 的商品資料轉移工具

雖然團隊已開發了 WooCommerce 商品匯入暨自動產生工具,不過如果 2 個網站的商品資料都是自行產生,難免會有差異性,為了提高 OpenCart 與 WooCommerce 的資料相同性,我們仍決定開發直接從 OpenCart 將商品資料轉入到 WooCommerce 的商品資料轉移工具。

由於經歷過之前商品資料產生工具的開發,我們已對於 OpenCart 及 WooCommerce 的商品資料結構極為熟悉,所以開發商品資料平行轉移的工具並不算太困難,不過面對資料量比較大的任務,有些平時不重視的動作,也會在這時被放大影響力,例如在對 OpenCart 撈取 10 萬筆商品時,一開始並未只撈取要使用的欄位,使得程式一直耗盡記憶體而失敗,後來修正程式,指撈取要轉移的資料欄位,不但解決了記憶體耗盡的問題,整體轉移速度也曾快了許多。

另外,WooCommerce 商品的特色圖片,儲存方式與 OpenCart 不同,OpenCart 是在商品資料表中有一個 image 的欄位,直接存放商品主圖的路徑及檔名,而 WooCommerce 則是先在 posts 資料表建立一筆紀錄來儲存圖檔的相關資訊,以及在 postmeta 資料表建立附屬資料(例如不同大小的縮圖資料),然後才在商品資料的相關紀錄中,記錄著圖檔的 posts.ID 來達成關聯,這也是 OpenCart 圖片要轉換到 WooCommerce 比較麻煩一點的地方。

由於轉換的程式無須處理圖片的縮圖等事宜,單純處理資料庫的紀錄轉換,所以效率不差,直接在網站主機上執行,大約一分鐘左右可完成。

如果你有圖片轉換的需求,建議找現成的圖片管理軟體,這類軟體通常會提供批次更名(可設定更名規則)、批次縮圖、批次圖檔格式轉換等等,相信處理效率會比透過網站程式或外掛來得高很多。

只要能取得原有的商品資料,例如 Excel 檔、或是其他電商系統的商品匯出資料檔,都能透過匯入工具或是自行開發程式,將商品資料導入 WooCommerce 或 OpenCart,省去人工重建的麻煩或資料建置錯誤的可能性,但如果您的商品只有區區幾十筆,或許也不用那麼麻煩,直接人供輸入就好了。