Php Magento 2:如何在结帐时加载另一个客户数据,而不是通过自定义模块加载当前登录的客户?

Php Magento 2:如何在结帐时加载另一个客户数据,而不是通过自定义模块加载当前登录的客户?,php,session,magento2,checkout,Php,Session,Magento2,Checkout,我想在结帐页面上显示一个客户列表作为下拉列表,当我从该下拉列表中更改客户时,所有详细信息(如发货地址、客户详细信息)都应根据所选客户进行更改。但当前loggedin客户不应注销,应从该下拉列表中为所选客户下订单 欢迎提供最佳解决方案! 也发布在Magento Stack上: 使用此代码,它将帮助您 按如下方式定义事件 <?xml version='1.0'?> <config xmlns:xsi='http://www.w3.org/2001/XMLSchema-instanc

我想在结帐页面上显示一个客户列表作为下拉列表,当我从该下拉列表中更改客户时,所有详细信息(如发货地址、客户详细信息)都应根据所选客户进行更改。但当前loggedin客户不应注销,应从该下拉列表中为所选客户下订单

欢迎提供最佳解决方案! 也发布在Magento Stack上:

使用此代码,它将帮助您

按如下方式定义事件

<?xml version='1.0'?>
<config xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:noNamespaceSchemaLocation='urn:magento:framework/Event/etc/events.xsd'>
    <event name='checkout_submit_before'>
        <observer
                name='Arhamsoft_Order_Order_BeforeCheckout'
                instance='Arhamsoft\Order\Observer\BeforeCheckout'
        />
    </event>
</config>

现在为它创建一个观察者

<?php 

namespace MODULE\Order\Observer; 
use Magento\Framework\Event\ObserverInterface;
use Magento\Framework\ObjectManager\ObjectManager;
 /*** For Override Success Page **/
class BeforeCheckout implements \Magento\Framework\Event\ObserverInterface { 

     protected $_objectManager;

    protected $_orderFactory;    
    protected $_checkoutSession;

    public function __construct(        
        \Psr\Log\LoggerInterface $loggerInterface,
        \Magento\Checkout\Model\Session $checkoutSession,
        \Magento\Sales\Model\OrderFactory $orderFactory,
        \Magento\Framework\ObjectManager\ObjectManager $objectManager
    ) {
    }

    /*** For Save SA ID  And Other Attributes Values **/
    public function execute(\Magento\Framework\Event\Observer $observer ) { 

    }

}

您尝试过事件观察者吗?是的,我尝试过在事件观察者之前签出,但它不起作用…它似乎起作用了。让我根据我的要求修改它。感谢您的努力,现在我可以在magento中使用任何类型的预处理器。再次感谢