如何从 Magento 2.3 中的最后一个订单中检索信息

How to retrieve information from the last order in Magento 2.3

我想从客户端在 magento 2.3 中发出的最后一个请求中获取信息

在编辑 success.phtml 页面时,您需要向我显示一些有关完成请求的信息,如请求的总值和地址,我看了一些教程,说它们可以使用下面的脚本。

$status = Mage::getModel('sales/order')->getCollection()
    ->setOrder('entity_id', Varien_Data_Collection::SORT_ORDER_DESC)
    ->getFirstItem()
    ->getPrice();

代码未检索任何信息。

我建议你使用Observer,来拦截刚刚购买的订单数据,然后使用订单数据实现所需的功能。

events.xml

<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">

    <event name="checkout_submit_all_after">
        <observer name="yourcompany_yourmodule_checkout_submit_all_after" instance="YourCompany\YourModule\Observer\ProcessOrder" />
    </event>

</config>

还有观察者

public function execute(\Magento\Framework\Event\Observer $observer)
{
    $order = $observer->getOrder();
    $quote = $observer->getQuote();
    // Do whatever you want here
    return $this;
}