Comment puis-je supprimer les commandes de test créées dans mon magasin? J'ai ouvert la base de données mais je n'ai pas trouvé la table de commande. Aidez-moi à supprimer les commandes. J'utilise la dernière version de Magento 2.
Comment puis-je supprimer les commandes de test créées dans mon magasin? J'ai ouvert la base de données mais je n'ai pas trouvé la table de commande. Aidez-moi à supprimer les commandes. J'utilise la dernière version de Magento 2.
Réponses:
Je vous suggère d'éviter le désordre direct avec SQL.
Vous pouvez utiliser n'importe quelle bonne extension comme Mageplaza
Une autre option consiste à créer un script à la racine et à supprimer l'ordre par programme
Vous pouvez créer un fichier à la racine avec le code suivant:
<?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";
}
Edit I
Si vous souhaitez supprimer l'ordre à l'aide d'un script, vous pouvez mettre le code ci-dessus dans le dossier racine de magento.Après cela, vous pouvez appuyer sur URL dans le navigateur.
Par exemple, votre magento est installé sur www.example.com et votre nom de fichier est que deleteOrder.php
vous pouvez l'exécuter par:
www.example.com/deleteOrder.php
Si vous souhaitez installer l'extension, vous devez
- 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)
Vous pouvez également trouver un document sur le site officiel
Vous pouvez supprimer toutes les commandes, l'historique des commandes, les expéditions, les factures, les notes de crédit, ainsi que les devis, les articles de devis de la base de données en suivant SQL:
SET FOREIGN_KEY_CHECKS=0;
# Historique des commandes propres
TRUNCATE TABLE `sales_bestsellers_aggregated_daily`;
TRUNCATE TABLE `sales_bestsellers_aggregated_monthly`;
TRUNCATE TABLE `sales_bestsellers_aggregated_yearly`;
# Informations d'ordre propre
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;
Avant de faire ci-dessus, faites une sauvegarde de votre base de données.
J'espère que cela vous aidera.