mình sẽ hướng dẫn bạn xóa toàn bộ sản phẩm và hình ảnh liên quan trong WordPress (WooCommerce), theo 3 cách:
1️⃣ Dễ nhất (dùng giao diện WP)
2️⃣ Nhanh nhất (dùng plugin)
3️⃣ Toàn diện và triệt để (dùng lệnh SQL trong phpMyAdmin)
Mục lục
🧩 Cách 1: Xóa sản phẩm và ảnh bằng giao diện WordPress (an toàn nhất)
🪶 Thao tác:
-
Vào Sản phẩm → Tất cả sản phẩm
-
Chọn tất cả (tick ô đầu bảng)
-
Trong menu “Hành động hàng loạt” chọn “Chuyển vào thùng rác” → Áp dụng
-
Sau đó vào Thùng rác → Chọn tất cả → Xóa vĩnh viễn
👉 Như vậy bạn đã xóa toàn bộ sản phẩm.
🔥 Xóa ảnh (media) đi kèm:
-
Vào Thư viện → Danh sách (List view)
-
Lọc ảnh theo “Đính kèm” (chọn “Không có tệp đính kèm”)
-
Chọn tất cả → “Xóa vĩnh viễn”
💡 Nếu ảnh được WooCommerce tạo thêm (nhiều kích thước khác nhau), cách này sẽ gỡ sạch toàn bộ hình sản phẩm.
⚙️ Cách 2: Dùng plugin (nhanh, không cần SQL)
🔹 Plugin khuyên dùng:
WP-CLI / Bulk Delete / Advanced Database Cleaner
Cách làm (với plugin Bulk Delete):
-
Cài đặt & kích hoạt plugin Bulk Delete
-
Vào Công cụ → Bulk Delete → Posts
-
Chọn:
-
Post Type:
product -
Tick “Delete Permanently”
-
Nhấn Bulk Delete
-
-
Vào Công cụ → Bulk Delete → Attachments để xóa hình ảnh.
⚠️ Cách này an toàn, nhưng với hàng nghìn sản phẩm có thể mất vài phút.
💣 Cách 3: Dùng lệnh SQL (xóa triệt để, cực nhanh)
⚠️ RẤT CẨN THẬN — hãy sao lưu database trước khi làm!
Dưới đây là câu lệnh xoá toàn bộ sản phẩm và ảnh liên quan WooCommerce:
-- Xoá toàn bộ sản phẩm (post_type = 'product' và 'product_variation')
DELETE FROM wp_posts WHERE post_type IN ('product', 'product_variation');
-- Xoá metadata liên quan sản phẩm
DELETE FROM wp_postmeta WHERE post_id NOT IN (SELECT ID FROM wp_posts);
-- Xoá dữ liệu taxonomy (danh mục sản phẩm, thẻ)
DELETE FROM wp_term_relationships WHERE object_id NOT IN (SELECT ID FROM wp_posts);
-- Xoá toàn bộ ảnh trong thư viện (media)
DELETE FROM wp_posts WHERE post_type = 'attachment';
-- Xoá metadata của ảnh
DELETE FROM wp_postmeta WHERE post_id NOT IN (SELECT ID FROM wp_posts);



