向Magento 2签出页面添加代码。在哪里写代码?

向Magento 2签出页面添加代码。在哪里写代码?,magento,magento2,Magento,Magento2,我想在我的magento 2签出页面中添加以下代码。我不想为此创建新的扩展。请看下面我的代码 public function execute(\Magento\Framework\Event\Observer $observer) { if($observer->getEvent()->getMethodInstance()->getCode()=="cashondelivery"){ $check

我想在我的magento 2签出页面中添加以下代码。我不想为此创建新的扩展。请看下面我的代码

public function execute(\Magento\Framework\Event\Observer $observer)
    {
     
        if($observer->getEvent()->getMethodInstance()->getCode()=="cashondelivery"){
            $checkResult = $observer->getEvent()->getResult();
            $checkResult->setData('is_available', true);
        }else{
            
            $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
            $cart = $objectManager->get('\Magento\Checkout\Model\Cart'); 
            $items = $cart->getItems();
            $flag = 0;
            $count=0;
            foreach($items as $item){
                
                $attribute1 = $item->getProduct()->getData('otherthancod');
                 if($attribute1){
                    $flag++;
                    $count++;
                }else{
                    $flag--;
                }
            }
            
            if($flag == $count){
                        $checkResult = $observer->getEvent()->getResult();
                        $checkResult->setData('is_available', true); 
            }else{
                        $checkResult = $observer->getEvent()->getResult();
                        $checkResult->setData('is_available', false); 
            }
            
        }
    }
我可以在哪一页编写此代码?

请帮助。

您可以使用

生成扩展。您仍然需要使用di.xml中的“preference”标记覆盖控制器。如果没有自定义模块,重写PHP代码是不可能的