Làm thế nào để xóa tất cả các sản phẩm từ một danh mục lớn?


8

Tôi đang làm việc để nhập ~ 40k sản phẩm vào Magento. Tôi cần một cách dễ dàng để loại bỏ tất cả các sản phẩm ở giữa các thử nghiệm, nhưng cố gắng thực hiện điều này từ các lỗi quản trị viên trước khi thực hiện rất xa.

Nếu tôi cố gắng cắt trực tiếp bảng, tôi gặp rất nhiều phụ thuộc ngăn cản các hành động.

Có thể xóa tất cả các sản phẩm mà không cần sử dụng quản trị viên?


1
Nếu chỉ để thử nghiệm, có thể cách dễ dàng là: sao lưu cơ sở dữ liệu của bạn trước khi nhập và khôi phục lại sau.
Arnaud L

Câu trả lời:


4

Nếu bạn đang nhập thông qua Mage_ImportExportđó cũng có một tùy chọn "XÓA". Nếu bạn áp dụng điều này trên cùng một tệp nhập, tất cả các SKU có trong tệp này sẽ bị xóa.

Trong mã này là ->setBehavior(Mage_ImportExport_Model_Import::BEHAVIOR_DELETE);

Bạn vẫn có thể cắt bớt các bảng sản phẩm cụ thể thông qua SQL - nhưng tất nhiên bạn phải giải quyết tất cả các phụ thuộc và cũng cắt bớt các bảng đó.

Hoặc: Tạo kết xuất cơ sở dữ liệu "sạch" trước khi nhập và áp dụng kết xuất này trước mỗi lần kiểm tra.


Cảm ơn. Danh mục quá lớn để sử dụng các công cụ nhập mặc định của Mage, vì vậy chúng tôi đang sử dụng mô-đun của bên thứ 3. Tôi nghĩ rằng việc tạo một bãi chứa DB sạch mà tôi có thể khôi phục là lựa chọn tốt nhất của tôi.
Ryre

Học phần nào? Có lẽ cái đó cũng có một tùy chọn xóa? Có lẽ nó vẫn Mage_ImportExportdựa?
Alex

Đó là uRapidflow và tôi không tìm thấy tùy chọn xóa ở bất cứ đâu.
Ryre


7

Bạn có thể xóa tất cả các sản phẩm bằng Direct Sql.

Vui lòng sao lưu cơ sở dữ liệu của bạn và chạy các truy vấn sql sau.

Đặt lại tất cả các bảng sản phẩm. Coi chừng, đoạn script bên dưới sẽ xóa TẤT CẢ dữ liệu sản phẩm của bạn, vì vậy hãy làm cẩn thận.

`SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE `catalog_product_bundle_option`;
TRUNCATE TABLE `catalog_product_bundle_option_value`;
TRUNCATE TABLE `catalog_product_bundle_selection`;
TRUNCATE TABLE `catalog_product_entity_datetime`;
TRUNCATE TABLE `catalog_product_entity_decimal`;
TRUNCATE TABLE `catalog_product_entity_gallery`;
TRUNCATE TABLE `catalog_product_entity_int`;
TRUNCATE TABLE `catalog_product_entity_media_gallery`;
TRUNCATE TABLE `catalog_product_entity_media_gallery_value`;
TRUNCATE TABLE `catalog_product_entity_text`;
TRUNCATE TABLE `catalog_product_entity_tier_price`;
TRUNCATE TABLE `catalog_product_entity_varchar`;
TRUNCATE TABLE `catalog_product_link`;
TRUNCATE TABLE `catalog_product_link_attribute`;
TRUNCATE TABLE `catalog_product_link_attribute_decimal`;
TRUNCATE TABLE `catalog_product_link_attribute_int`;
TRUNCATE TABLE `catalog_product_link_attribute_varchar`;
TRUNCATE TABLE `catalog_product_link_type`;
TRUNCATE TABLE `catalog_product_option`;
TRUNCATE TABLE `catalog_product_option_price`;
TRUNCATE TABLE `catalog_product_option_title`;
TRUNCATE TABLE `catalog_product_option_type_price`;
TRUNCATE TABLE `catalog_product_option_type_title`;
TRUNCATE TABLE `catalog_product_option_type_value`;
TRUNCATE TABLE `catalog_product_super_attribute`;
TRUNCATE TABLE `catalog_product_super_attribute_label`;
TRUNCATE TABLE `catalog_product_super_attribute_pricing`;
TRUNCATE TABLE `catalog_product_super_link`;
TRUNCATE TABLE `catalog_product_enabled_index`;
TRUNCATE TABLE `catalog_product_website`;
TRUNCATE TABLE `catalog_product_entity`;
TRUNCATE TABLE `cataloginventory_stock`;
TRUNCATE TABLE `cataloginventory_stock_item`;
TRUNCATE TABLE `cataloginventory_stock_status`;
INSERT INTO `catalog_product_link_type` VALUES(1, 'relation');
INSERT INTO `catalog_product_link_type` VALUES(3, 'super');
INSERT INTO `catalog_product_link_type` VALUES(4, 'up_sell');
INSERT INTO `catalog_product_link_type` VALUES(5, 'cross_sell');
INSERT INTO `catalog_product_link_attribute` VALUES(1, 1, 'position', 'int');
INSERT INTO `catalog_product_link_attribute` VALUES(2, 3, 'position', 'int');
INSERT INTO `catalog_product_link_attribute` VALUES(3, 3, 'qty', 'decimal');
INSERT INTO `catalog_product_link_attribute` VALUES(4, 4, 'position', 'int');
INSERT INTO `catalog_product_link_attribute` VALUES(5, 5, 'position', 'int');
INSERT INTO `cataloginventory_stock` VALUES(1, 'Default');
SET FOREIGN_KEY_CHECKS = 1;`

Xóa số lượng sản phẩm khỏi danh mục ở mặt sau

`SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE `catalog_category_product`;
TRUNCATE TABLE `catalog_category_product_index`;
SET FOREIGN_KEY_CHECKS = 1;`

Xóa Sản phẩm bán chạy nhất và xem nhiều nhất tại Bảng điều khiển

`SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE `report_compared_product_index`;
TRUNCATE TABLE `report_viewed_product_aggregated_daily`;
TRUNCATE TABLE `report_viewed_product_aggregated_monthly`;
TRUNCATE TABLE `report_viewed_product_aggregated_yearly`;
TRUNCATE TABLE `report_viewed_product_index`;
TRUNCATE TABLE `sales_bestsellers_aggregated_daily`;
TRUNCATE TABLE `sales_bestsellers_aggregated_monthly`;
TRUNCATE TABLE `sales_bestsellers_aggregated_yearly`;
SET FOREIGN_KEY_CHECKS = 1;`

Rửa sạch tất cả các bàn phẳng của sản phẩm

`SET FOREIGN_KEY_CHECKS = 0;
DELETE FROM catalog_product_flat_1;
DELETE FROM catalog_product_flat_2;
DELETE FROM catalog_product_flat_3;
DELETE FROM catalog_product_flat_4;
DELETE FROM catalog_product_flat_5;
SET FOREIGN_KEY_CHECKS = 1;`

Xóa đánh giá và đánh giá sản phẩm

`SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE table `rating_option_vote`; 
TRUNCATE table `rating_option_vote_aggregated`;
TRUNCATE table `review`; 
TRUNCATE table `review_detail`; 
TRUNCATE table `review_entity_summary`; 
TRUNCATE table `review_store`;
SET FOREIGN_KEY_CHECKS = 1;`

Đối với doanh nghiệp tuôn ra các bảng sau

`SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE `catalog_category_flat_cl`;
TRUNCATE TABLE `catalog_category_product_cat_cl`;
TRUNCATE TABLE `catalog_category_product_index_cl`;
TRUNCATE TABLE `catalog_product_flat_cl`;
TRUNCATE TABLE `catalog_product_index_price_cl`;
TRUNCATE TABLE `cataloginventory_stock_status_cl`;
TRUNCATE TABLE `catalogsearch_fulltext_cl`;
SET FOREIGN_KEY_CHECKS = 1;`

Điều đáng nói là nếu bạn đã cắt bớt sản phẩm của mình thì nên chạy bộ lập chỉ mục. Đặc biệt nếu bạn đang sử dụng Solr. Ngoài ra đối với EE tôi thấy bảng sau cũng có thể bị xóa: enterprise_catalog_product_rewriteVÀ cho CE và EE:catalogsearch_query catalog_product_entity_url_key
PanPipes

câu trả lời hoàn hảo với lời giải thích +1 :) !!!
SagarPPanchal

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.