WooCommerce 商品匯出怎麼做?備份與轉移 CSV

換主機、做季度備份、把商品丟給通路對接,這些情境的第一步幾乎都是同一件事:把 WooCommerce 商品匯出成 CSV。好消息是 WooCommerce 從 3.1 版起就內建了商品 CSV 匯入匯出工具,不裝外掛就能用;難的是匯出之後常常踩到三個坑——欄位選錯導致資料不齊、變化型商品結構看不懂、用 Excel 打開全是亂碼。

這篇會把 WooCommerce 商品匯出講清楚:內建工具怎麼操作、備份與轉移該勾哪些選項、變化型商品在 CSV 裡長什麼樣子、亂碼怎麼解,以及什麼時候內建功能不夠、得改用外掛。看完你會知道每個情境該怎麼匯出,而不是每次都把所有欄位倒出來再回頭懊惱漏了東西。

WooCommerce 內建匯出工具在哪裡,怎麼操作?

匯出入口在後台「商品」>「全部商品」清單頁的最上方,「新增商品」按鈕旁邊就有「匯出」鈕。WooCommerce 3.1 版之後內建這個工具,不需要外掛,匯出的 CSV 也已經符合官方的商品匯入結構,之後要再匯回同站或別站都讀得進去。

點下「匯出」後會進到匯出設定畫面,主要有三個下拉選單和一個勾選框要決定:

  • 匯出欄位:預設是「匯出所有欄位」。也可以用下拉選單只挑要的欄位,例如只想批次改價,就留商品名稱、SKU、售價、特價幾欄即可。
  • 匯出商品類型:可以全選,也可以只匯出簡單商品、變化型商品、組合商品、外部/加盟商品其中幾種。
  • 匯出商品分類:可以匯出全部分類,或只匯出指定分類底下的商品。
  • 匯出自訂中介資料(Custom Meta):預設不勾。勾了才會把外掛寫進商品的 metadata 一起帶出來,這欄對轉移完整度影響很大,後面會專門說明。

設定好之後按「產生 CSV」,等進度跑完,瀏覽器就會把 CSV 檔下載到電腦。商品數量多時這一步要等一下,不要中途關掉分頁。

從 WooCommerce 9.9 版開始,多了一個更快的做法:直接在「全部商品」清單頁勾選你要的幾筆商品,上方就會出現「匯出 X 個選取項目」的按鈕,不必進匯出畫面再篩分類。臨時要把某幾筆商品丟給設計師或通路時,這個路徑最省事。

備份、轉移、外部對接,三種情境各該怎麼匯出?

先想清楚「為什麼要匯出」,再決定欄位和選項,可以少走很多回頭路。三種最常見的目的,匯出策略其實不一樣。

做備份:目標是留一份目前商品資料的快照,所以欄位要全留。「匯出所有欄位」維持預設、商品類型與分類都全選、並且勾起「匯出自訂中介資料」,這樣外掛附加的欄位也會一起備份。建議固定週期(例如每月)匯出一次,檔名帶上日期方便追溯改動。要提醒的是,匯出的 CSV 只是商品資料的備份,不等於整站備份,這點下一節會講。

轉移到新站或換主機:和備份一樣要全欄位、全類型、全分類、勾自訂中介資料,差別在匯入端。商品圖片不會被「打包」進 CSV,CSV 裡存的是圖片網址;所以匯到新站時,圖片要嘛維持舊站網址可被讀取,要嘛新站能透過外部網址重新抓圖入媒體庫。如果舊站要關掉,記得先確認圖片來源不會跟著消失。

給外部系統對接:例如要把商品丟到 Shopify、自建平台、或行銷工具,這時通常不需要全部欄位,反而要對方規定的格式。先確認對接方需要哪些欄位(多半是名稱、SKU、價格、庫存、分類、圖片網址),在匯出畫面只挑這幾欄,匯出後再用試算表調整成對方要的標頭名稱即可。CSV 的好處就是格式中性,只要欄位對得上,資料幾乎能搬到任何讀得懂 CSV 的系統。

WooCommerce 商品匯出的 CSV 包含哪些欄位?

匯出的每一列代表一個商品,每一欄對應一個商品屬性。內建工具用的是 WooCommerce 官方的商品匯入結構,常用欄位包含:

  • ID:商品的內部編號。要注意匯入時無法指定 ID,系統一律給下一個可用編號,所以跨站轉移別依賴 ID 對應,要靠 SKU。
  • Type(類型):simple、variable、grouped、external、variation、virtual、downloadable。
  • SKU:商品料號,必填;轉移與更新時靠它對應商品。
  • Name(名稱):必填。
  • Published(發佈狀態):1 為公開、0 為私密、-1 為草稿。
  • Regular price/Sale price:原價與特價。
  • Stock/In stock?:庫存數量與是否有貨。
  • Weight/Length/Width/Height:重量與長寬高,運費計算會用到。
  • Categories(分類)/Tags(標籤):分類用 > 表示階層,例如 服飾 > 上衣,多個分類用逗號分隔。
  • Images(圖片):圖片網址,多張用逗號分隔,第一張會被設為主圖、其餘進商品圖庫。
  • Attribute 1 name/value(s)/visible/global:商品屬性欄位,變化型商品靠這幾欄定義尺寸、顏色等規格。

要注意兩個格式細節。其一,匯出的 CSV 不含草稿商品,只會匯出已發佈與私密發佈的商品。其二,分類名稱本身如果帶逗號,匯出時會用反斜線跳脫(例如 台北, 台中),避免被誤判成欄位分隔,匯回時 WooCommerce 看得懂這個寫法。

「匯出自訂中介資料」這個勾選框該不該勾?

要看你裝了哪些外掛,以及匯出的用途。WooCommerce 預設不匯出 metadata,而商品上的 metadata 多半是其他外掛寫進去的資料,例如 SEO 外掛的標題描述、會員價、自訂欄位(ACF)內容。

勾起「匯出自訂中介資料」後,這些欄位會以 meta: 開頭的欄名一起匯出。舉例來說,若商品有一個 product_depth 的 metadata,匯出檔裡就會出現一欄叫 meta:product_depth。做完整備份或換站轉移時,這個框一定要勾,否則外掛附加的資料會在轉移後整批遺失,新站商品看起來「少了一截」卻又說不上來哪裡不對。

反過來說,如果只是要批次改個價格、或匯給外部通路一份精簡清單,這些 meta: 欄位是雜訊,不勾反而清爽。判斷原則很單純:要還原回 WooCommerce 的場景就勾,要給站外用的就不勾。

變化型商品匯出後,CSV 裡為什麼有好幾列?

變化型商品(variable product)在 CSV 裡不是一列,而是「母商品一列+每個變化各一列」。例如一件 T 恤有 S、M 兩個尺寸,匯出後會看到三列:一列 Type 是 variable 的母商品,兩列 Type 是 variation 的子項。看起來變多了,其實是正常結構,照著原本的對應關係改就好。

母商品那列負責定義屬性的可選值,子項列負責各自的價格、SKU、庫存。對應到欄位是這樣分工的:


Type=variable
S
Type=variation
M
Type=variation

幾個關鍵欄位要看懂。母商品列的 Attribute 1 value(s) 要列出所有可選值(例如 S, M),每個子項列只填自己那一個值。子項列的 Parent(上層)欄位要填母商品的 SKU,系統靠這個把變化綁回母商品;匯出時 WooCommerce 會盡量用 SKU 而非數字 ID 來標示上層,這也是轉移時務必保留 SKU 的原因。Attribute 1 visible 標示屬性是否顯示給顧客看(1 顯示、0 隱藏),Attribute 1 global 標示是否為全站共用屬性(1 是、0 只屬於這個商品)。

把這層結構看懂之後,要在試算表裡批次改變化型商品的價格或庫存就不會手忙腳亂——找到 Type 為 variation 的那幾列改即可,母商品列不用動價格。

用 Excel 打開 CSV 是亂碼,怎麼解決?

亂碼幾乎都是編碼問題。WooCommerce 匯出的 CSV 是 UTF-8 編碼,但 Excel 在某些版本預設不是用 UTF-8 開啟,中文就會變成一堆問號或方塊。官方其實建議盡量避開 Microsoft Excel,因為它在格式與字元編碼上比較容易出狀況,改用 Google 試算表、LibreOffice Calc、OpenOffice 或 macOS 的 Numbers,這些工具開 UTF-8 的 CSV 通常不會亂碼。

如果一定要用 Excel,有兩個做法。其一,不要直接雙擊開檔,改從 Excel 的「資料」>「從文字/CSV」匯入,在原始檔案格式那欄選「65001: Unicode (UTF-8)」再載入。其二,存檔時務必選「CSV UTF-8(逗號分隔)」這個格式,不要存成一般 CSV,否則改完匯回 WooCommerce 又會亂碼。

還有一個容易忽略的點:在試算表裡編輯 SKU 或料號時,如果值是純數字(例如 0012345),Excel 可能會把開頭的 0 吃掉、或把長數字轉成科學記號。匯回前要把這幾欄設成「文字」格式,避免料號被悄悄改掉對不上商品。

匯出的 CSV 等於完整網站備份嗎?

不等於,這是最容易誤會的一點。商品 CSV 匯出只涵蓋「商品資料」,而且還有幾個明確的缺口,把它當成全站備份遲早出事。

  • 不含草稿商品:匯出只包含已發佈與私密發佈的商品,草稿狀態的商品不會出現在 CSV 裡。
  • 不含訂單與顧客:商品匯出工具顧名思義只處理商品,訂單、顧客、優惠券這些得另外用對應工具或外掛匯出。
  • 圖片只存網址、不打包檔案:CSV 裡記的是圖片連結,圖片檔本身仍在原站的媒體庫。舊站若關閉而圖片來源失效,新站的圖就會連不出來。
  • 外掛資料要勾才有:沒勾「匯出自訂中介資料」的話,外掛寫進商品的欄位不會出現在 CSV。

所以正確的定位是:商品 CSV 是「商品層級」的快照與搬運工具,適合批次編輯、轉移商品、留商品異動記錄。要做真正的整站備份,仍要靠主機端或備份外掛把資料庫與檔案一起打包,兩者目的不同,不能互相取代。

內建匯出功能不夠用時,什麼時候該換外掛?

日常情境下,內建工具其實能應付大部分需求:備份、批次改價、換站轉移、丟精簡清單給通路,都做得到。會撞到牆通常是這幾種狀況:

  • 商品數量很大、伺服器扛不住:內建匯入有 64MB 的檔案上限,且大量匯入時伺服器效能會成為瓶頸。官方對於上千筆的複雜匯入,建議改用付費的 Product CSV Import Suite 擴充功能,它支援更大量、更複雜的商品與外掛自訂資料。
  • 要排程自動匯出:內建工具是手動點按。需要定期自動匯出再傳到遠端(例如透過 SFTP 對接 ERP 或金流對帳系統,這裡只談資料傳輸、不涉及收款流程)時,得靠像 Product Import Export 這類支援排程與 SFTP 通道的外掛。
  • 要匯出成 CSV 以外的格式:內建只給 CSV。需要 XML、Excel、甚至 PDF/HTML 輸出時,WP All Export、Advanced Order Export 這類外掛提供更多輸出格式與拖拉式欄位設定。
  • 要匯出非商品資料的複雜組合:要一次處理商品、訂單、顧客、評論等多種資料類型,內建工具是分開的,這時整合型外掛(例如 WP All Export 搭配 WP All Import)會更順手。

挑選的判斷順序很簡單:先用內建工具試一次,能滿足就不必多裝外掛;真的撞到資料量、格式、排程或自訂欄位的限制,再針對缺口挑對應外掛。先確認瓶頸是什麼,再決定要不要花錢,比一開始就裝一堆外掛實際得多。

從匯出到匯回,怎麼把流程跑順?

WooCommerce 商品匯出的核心,是先想清楚用途再決定怎麼匯:備份和轉移要全欄位、勾自訂中介資料;給外部對接則只挑必要欄位、再改成對方的標頭。操作上記得 CSV 是 UTF-8,用 Google 試算表或 LibreOffice 開最不會亂碼,編輯 SKU 時把欄位設成文字避免數字被改掉。

也別忘了商品 CSV 不等於整站備份——它不含訂單顧客、圖片只存網址、草稿不匯出,真正的備份還是要靠主機端方案。內建工具撐不住資料量或缺排程、缺格式時,再依缺口挑外掛補上。

下一步,建議現在就到後台「商品」>「全部商品」按一次「匯出」,先匯出幾筆當作練習,打開 CSV 對照本文的欄位說明看一遍。把欄位結構摸熟之後,無論是季度備份、換主機,還是把商品丟給通路,你都能一次選對選項、少走回頭路。

相關文章
標籤: 變化型商品, WooCommerce, 商品匯出, CSV, 網站轉移