Delete Magento orders older than 2022 for guest customers
Delete Magento orders older than 2022 for guest customers
/** @var \Magento\Sales\Model\ResourceModel\Order\CollectionFactory $orderCollectionFactory */
$orderCollectionFactory = $this->objectManager->get(\Magento\Sales\Model\ResourceModel\Order\CollectionFactory::class);
// Build the collection
$orderCollection = $orderCollectionFactory->create()
->addFieldToFilter('created_at', ['lt' => '2022-01-01'])
->addFieldToFilter('customer_id', ['null' => true]);
$orderCollection->setPageSize(10000);
// Display results (for testing purposes)
foreach ($orderCollection as $order) {
$order->delete();
echo "Order ID: " . $order->getId() . PHP_EOL;
echo "Created At: " . $order->getCreatedAt() . PHP_EOL;
echo "Customer ID: " . $order->getCustomerId() . PHP_EOL;
echo "-------------- -----------------------".PHP_EOL;
}
echo $orderCollection->getSize();