Làm thế nào tôi có thể xóa các đơn đặt hàng thử nghiệm được tạo trong cửa hàng của tôi? Tôi đã mở cơ sở dữ liệu nhưng tôi không thể tìm thấy bảng thứ tự. Xin hãy giúp tôi xóa các đơn đặt hàng. Tôi đang sử dụng phiên bản mới hơn của Magento 2.
Làm thế nào tôi có thể xóa các đơn đặt hàng thử nghiệm được tạo trong cửa hàng của tôi? Tôi đã mở cơ sở dữ liệu nhưng tôi không thể tìm thấy bảng thứ tự. Xin hãy giúp tôi xóa các đơn đặt hàng. Tôi đang sử dụng phiên bản mới hơn của Magento 2.
Câu trả lời:
Tôi đề nghị bạn tránh lộn xộn trực tiếp với SQL.
Bạn có thể sử dụng bất kỳ tiện ích mở rộng tốt nào như Mageplaza
Một tùy chọn khác là tạo một tập lệnh trên root và xóa thứ tự lập trình
Bạn có thể tạo một tập tin gốc bằng mã sau:
<?php
ini_set('error_reporting', E_ALL);
ini_set("display_errors", "1");
use Magento\Framework\App\Bootstrap;
require 'app/bootstrap.php';
$bootstrap = Bootstrap::create(BP, $_SERVER);
$objectManager = $bootstrap->getObjectManager();
$registry = $objectManager->get('Magento\Framework\Registry');
$state = $objectManager->get('Magento\Framework\App\State');
$state->setAreaCode('frontend');
$ids = array(1,2,3,4); // your order_id
foreach ($ids as $id) {
$order = $objectManager->create('Magento\Sales\Model\Order')->load($id);
$registry->register('isSecureArea','true');
$order->delete();
$registry->unregister('isSecureArea');
echo "order deleted";
}
Chỉnh sửa tôi
Nếu bạn muốn xóa thứ tự bằng cách sử dụng tập lệnh, bạn có thể đặt mã ở trên vào thư mục gốc của magento. Sau đó, bạn có thể nhấn URL trong trình duyệt.
Ví dụ: magento của bạn được cài đặt tại www.example.com và tên tệp của bạn là deleteOrder.php
bạn có thể chạy nó bằng cách:
www.example.com/deleteOrder.php
Nếu bạn muốn cài đặt tiện ích mở rộng, bạn cần phải
- Extract folder at [magentoRoot]/app/code
- Open terminal and run cd [magentoRoot] //change to root dir
- php bin/magento setup:upgrade
- php bin/magento cache:flush
- php bin/magento setup:static-content:deploy (only required in production mode)
Bạn cũng có thể tìm tài liệu tại Trang web chính thức
Bạn có thể xóa tất cả các đơn đặt hàng, lịch sử đặt hàng, lô hàng, hóa đơn, ghi nhớ tín dụng, cũng như các báo giá, trích dẫn các mục từ cơ sở dữ liệu bằng cách làm theo SQL:
SET FOREIGN_KEY_CHECKS=0;
# Lịch sử đặt hàng sạch
TRUNCATE TABLE `sales_bestsellers_aggregated_daily`;
TRUNCATE TABLE `sales_bestsellers_aggregated_monthly`;
TRUNCATE TABLE `sales_bestsellers_aggregated_yearly`;
# Làm sạch đơn hàng
TRUNCATE TABLE `sales_creditmemo`;
TRUNCATE TABLE `sales_creditmemo_comment`;
TRUNCATE TABLE `sales_creditmemo_grid`;
TRUNCATE TABLE `sales_creditmemo_item`;
TRUNCATE TABLE `sales_invoice`;
TRUNCATE TABLE `sales_invoiced_aggregated`;
TRUNCATE TABLE `sales_invoiced_aggregated_order`;
TRUNCATE TABLE `sales_invoice_comment`;
TRUNCATE TABLE `sales_invoice_grid`;
TRUNCATE TABLE `sales_invoice_item`;
TRUNCATE TABLE `sales_order`;
TRUNCATE TABLE `sales_order_address`;
TRUNCATE TABLE `sales_order_aggregated_created`;
TRUNCATE TABLE `sales_order_aggregated_updated`;
TRUNCATE TABLE `sales_order_grid`;
TRUNCATE TABLE `sales_order_item`;
TRUNCATE TABLE `sales_order_payment`;
TRUNCATE TABLE `sales_order_status_history`;
TRUNCATE TABLE `sales_order_tax`;
TRUNCATE TABLE `sales_order_tax_item`;
TRUNCATE TABLE `sales_payment_transaction`;
TRUNCATE TABLE `sales_refunded_aggregated`;
TRUNCATE TABLE `sales_refunded_aggregated_order`;
TRUNCATE TABLE `sales_shipment`;
TRUNCATE TABLE `sales_shipment_comment`;
TRUNCATE TABLE `sales_shipment_grid`;
TRUNCATE TABLE `sales_shipment_item`;
TRUNCATE TABLE `sales_shipment_track`;
TRUNCATE TABLE `sales_shipping_aggregated`;
TRUNCATE TABLE `sales_shipping_aggregated_order`;
TRUNCATE TABLE `quote`;
TRUNCATE TABLE `quote_address`;
TRUNCATE TABLE `quote_address_item`;
TRUNCATE TABLE `quote_id_mask`;
TRUNCATE TABLE `quote_item`;
TRUNCATE TABLE `quote_item_option`;
TRUNCATE TABLE `quote_payment`;
TRUNCATE TABLE `quote_shipping_rate`;
TRUNCATE TABLE sequence_invoice_1;
TRUNCATE TABLE sequence_order_1;
TRUNCATE TABLE sequence_shipment_1;
TRUNCATE TABLE sequence_creditmemo_1;
SET FOREIGN_KEY_CHECKS=1;
Trước khi làm ở trên hãy sao lưu cơ sở dữ liệu của bạn.
Hy vọng điều này sẽ giúp.