Надання високоякісних послуг вимагає оптимізації багатьох процесів у вашому магазині, включно з керуванням замовленнями. З огляду на це, пошук деяких деталей замовлення може зайняти певний час, особливо якщо ваш каталог налічує сотні продуктів.
Тим не менш, Magento дозволяє спростити цей процес. Ви можете отримати дані замовлення за increment ID в Magento кількома способами, так само, як ви можете отримати поточний продукт або поточну категорію.
Отож, у цій статті ви дізнаєтеся як використовувати кожен метод.
Зміст [приховати]
Отримайте дані замовлення за increment ID використовуючи factory method
Factory method використовують найчастіше. Для цього, застосуйте такий код:
protected $orderFactory; public function __construct( \Magento\Sales\Model\OrderFactory $orderFactory ) { $this->orderFactory = $orderFactory; } public function getOrderByIncrementId() { $orderIncrementId = 10000003; $order = $this->orderFactory->create()->loadByIncrementId($orderIncrementId); }
Отримайте дані замовлення за increment ID використовуючи API repository
Ось ще один можливий варіант. Отримати дані замовлення за increment ID можна також за допомогою API repository.
protected $order; public function __construct( \Magento\Sales\Api\Data\OrderInterface $order ) { $this->order = $order; } public function getOrderByIncrementId() { $orderIncrementId = 10000485; $order = $this->order->loadByIncrementId($orderIncrementId); }
Отримайте дані замовлення за increment ID використовуючи object manager
Object Manager теж можна застосувати для того, щоб отримати дані замовлення. Незважаючи на те, що цей метод видається найпростішим, з ним можуть виникати труднощі.
$orderIncrementId= '1000101628'; $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $order = $objectManager->get(\Magento\Sales\Api\Data\OrderInterface::class)->loadByIncrementId($orderIncrementId); print_r($order->getData());
Примітка: рекомендуємо уникати використання методу object manager, оскільки він приховує реальні залежності класу.
Що ж, який метод імпонує вам найбільше?
Наведені вище методи отримання даних замовлення не надто складні. Дізнавшись, як отримати дані замовлення за increment ID, важливо навчитися отримувати інформацію про магазин у Magento 2.