Bỏ qua tới nội dung
WooCommerce· ·9 phút đọc

Xuất và nhập sản phẩm hàng loạt trong WooCommerce qua CSV

Nguyen Hien
Xuất và nhập sản phẩm hàng loạt trong WooCommerce qua CSV
Cỡ chữ

Khi shop có vài chục sản phẩm thì sửa tay vẫn ổn, nhưng tới ngưỡng vài trăm hay vài nghìn mã hàng, việc đổi giá hay cập nhật tồn kho qua giao diện sẽ ngốn cả buổi. WooCommerce đã tích hợp sẵn công cụ Product CSV Importer and Exporter (trình xuất/nhập sản phẩm bằng file CSV) ngay trong phần Sản phẩm, không cần cài thêm plugin. Bài viết này đi qua từng khâu thực tế mà một shop Việt thường gặp.

File CSV của WooCommerce có cấu trúc thế nào

CSV (Comma-Separated Values — file bảng phân tách bằng dấu phẩy) là một bảng phẳng: mỗi dòng là một sản phẩm, mỗi cột là một thuộc tính. Cách nhanh nhất để hiểu cấu trúc là vào Sản phẩm → Xuất, tải về một file mẫu rồi mở ra xem. Bạn sẽ thấy các cột quen thuộc:

  • IDSKU — hai khoá để WooCommerce nhận diện sản phẩm khi nhập lại.
  • Type (loại) — simple cho sản phẩm đơn, variable cho sản phẩm có biến thể, variation cho từng biến thể con.
  • Name, Regular price (giá gốc), Sale price (giá khuyến mãi), Stock (số lượng tồn), Categories, Images.
  • Các cột thuộc tính dạng Attribute 1 name / Attribute 1 value(s) dùng cho biến thể.

Bạn không bắt buộc giữ hết cột. Khi chỉ muốn đổi giá, hãy giữ lại SKU cùng cột giá và xoá phần còn lại cho gọn — đỡ rủi ro ghi đè nhầm dữ liệu khác.

Quy trình bốn bước xuất và nhập sản phẩm WooCommerce qua CSV
Vòng xuất → sửa → nhập → kiểm tra: cập nhật hàng trăm sản phẩm trong một lần.

Xử lý sản phẩm có biến thể (variation)

Đây là chỗ nhiều người vướng nhất. Một sản phẩm áo có 3 màu và 4 size không nằm gọn trên một dòng. Trong CSV, nó được tách thành nhiều dòng: một dòng cha kiểu variable khai báo tên và danh sách thuộc tính, kèm theo nhiều dòng con kiểu variation, mỗi dòng ứng với một tổ hợp màu–size cụ thể có giá và tồn kho riêng.

Sợi dây nối dòng cha với các dòng con chính là cột Parent (sản phẩm cha) — dòng con trỏ về SKU hoặc ID của dòng cha. Vì vậy SKU phải đặt nhất quán và không trùng. Nếu file lớn và bạn dùng tiện ích chuyên dụng như Product CSV Import Suite, quy trình thường tách làm hai bước: nhập sản phẩm cha trước, rồi nhập biến thể con sau, để hệ thống ghép đúng quan hệ.

Nhập ảnh hàng loạt

Trong cột Images, bạn điền đường dẫn URL đầy đủ tới ảnh (nhiều ảnh ngăn nhau bằng dấu phẩy, ảnh đầu tiên thành ảnh đại diện). WooCommerce sẽ tự tải ảnh về thư viện trong lúc nhập. Theo khuyến nghị của các tài liệu nhập liệu, ảnh thường là nút thắt cổ chai khiến import chậm hoặc lỗi giữa chừng, nên cách an toàn là tải sẵn ảnh lên một nơi truy cập được (chính máy chủ của bạn, hoặc một CDN cho ảnh sản phẩm để tải nhanh hơn) rồi dán URL vào CSV. Tránh để ảnh nằm trên dịch vụ yêu cầu đăng nhập, vì WooCommerce sẽ không lấy được.

Cập nhật giá và tồn kho hàng loạt

Đây là tình huống dùng thường xuyên nhất: mùa sale cần hạ giá, hoặc đầu tuần cần đồng bộ lại tồn kho. Quy trình gọn như sau:

  1. Xuất sản phẩm ra CSV, hoặc tự tạo file chỉ gồm cột SKU, Regular price, Sale price, Stock.
  2. Sửa các giá trị trong file (mở bằng phần mềm bảng tính cho dễ).
  3. Vào Sản phẩm → Nhập, chọn file, và quan trọng nhất là tích ô “Cập nhật sản phẩm hiện có” (Update existing products).

Ô tích này là điểm sống còn. WooCommerce dựa vào ID hoặc SKU trong file để tìm đúng sản phẩm và ghi đè. Nếu quên tích, hệ thống có thể tạo ra một loạt sản phẩm trùng thay vì cập nhật. Vì lẽ đó, mỗi sản phẩm cần một SKU đáng tin và không bỏ trống.

Tránh lỗi phông tiếng Việt khi mở CSV

Lỗi kinh điển của shop Việt là tên sản phẩm “Áo thun” bị biến thành “áo thun” hay loạn ký tự sau khi import. Nguyên nhân nằm ở bảng mã (encoding). WooCommerce yêu cầu file ở định dạng UTF-8, và theo tài liệu chính thức, nên tránh dùng Microsoft Excel vì nó hay làm hỏng dấu tiếng Việt khi lưu.

Vài cách xử lý đáng tin:

  • Khi lưu từ Excel, chọn định dạng “CSV UTF-8 (Comma delimited)” thay vì “CSV” thường.
  • Tốt hơn, dùng LibreOffice Calc, Notepad++ hoặc VS Code để lưu đúng UTF-8.
  • Khi mở file CSV trong Excel mà thấy loạn chữ, đừng mở bằng cách bấm đúp. Hãy vào tab Data → Get Data → From Text/CSV, chọn file, đổi File Origin thành 65001: Unicode (UTF-8), rồi mới Load.

Một lưu ý theo kinh nghiệm cộng đồng: với tiếng Việt, file UTF-8 thuần thường an toàn hơn UTF-8 có BOM (Byte Order Mark — dấu mở đầu file), vì ký tự thừa đầu file đôi khi làm WooCommerce hiểu sai tên cột đầu tiên.

Bốn thao tác hàng loạt với CSV WooCommerce: biến thể, ảnh, giá tồn kho, phông tiếng Việt
CSV xử lý gọn bốn việc dễ sai nhất khi thao tác hàng loạt.

Câu hỏi thường gặp

Có cần cài plugin để import sản phẩm không?

Không bắt buộc. Trình xuất/nhập CSV đã nằm sẵn trong WooCommerce. Bạn chỉ cần tiện ích bên thứ ba khi file rất lớn, cần lên lịch tự động, hoặc cần ánh xạ cột phức tạp.

Import có ghi đè mất ảnh và mô tả cũ không?

Chỉ những cột có trong file mới bị tác động. Nếu file chỉ có SKU và giá, các trường khác giữ nguyên. Đây là lý do nên cắt bớt cột khi chỉ muốn sửa một thứ.

File CSV nên giới hạn bao nhiêu dòng một lần?

Không có con số cứng — phụ thuộc cấu hình máy chủ và việc có tải ảnh hay không. Với file rất lớn kèm ảnh, nên chia nhỏ thành nhiều đợt để tránh hết thời gian xử lý (timeout) giữa chừng.

Nếu shop của bạn cần dựng từ đầu hoặc đang gặp rối khi chuyển kho hàng lớn, dịch vụ dựng và tối ưu shop WooCommerce của Web22 có thể đỡ phần kỹ thuật này; bạn cũng có thể tham khảo cách làm sạch dữ liệu trước khi nhập để giảm lỗi.

Đọc tiếp

Bài viết
cùng chủ đề.

Tất cả bài viết