Magento – Magento 2 checkout session

checkoutmagento2session

Is there any way to store checkout custom field data to checkout session? If possible how can I retrieve data?

Created an event

<?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_onepage_controller_success_action">
        <observer name="checkout_onepage_observer" instance="Mageplaza\HelloWorld\Observer\TestObserver" />
    </event>
</config>

Observer code

 <?php
    namespace Oye\Deliverydate\Model\Observer;
    use Magento\Framework\Event\Observer as EventObserver;
    use Magento\Framework\Event\ObserverInterface;

    /**
     * Class SaveDeliveryDateToOrderObserver
     * @package Oye\Deliverydate\Model\Observer
     */
    class SaveDeliveryDateToOrderObserver implements ObserverInterface
    {
        /**
         * @var \Magento\Framework\ObjectManagerInterface
         */
        protected $_objectManager;

        /**
         * @param \Magento\Framework\ObjectManagerInterface $objectmanager
         */
        public function __construct(\Magento\Framework\ObjectManagerInterface $objectmanager)
        {
            $this->_objectManager = $objectmanager;
        }

        /**
         * @param EventObserver $observer
         * @return $this
         */
        public function execute(EventObserver $observer)
        {
            $order = $observer->getOrder();
            $quoteRepository = $this->_objectManager->create('Magento\Quote\Model\QuoteRepository');
            $quote = $quoteRepository->get($order->getQuoteId());
            $order->setDeliveryDate( $quote->getDeliveryDate() );
            //echo $quote->getDeliveryDate();
           // exit();

        }

    }

In the observer last line I tried to echo deliverydate custom field value
using echo $quote->getDeliveryDate(); but not getting that value. Can I use session to store these custom checkout field value?

Best Answer

To know about use of checkout session you should check below link -

http://blog.chapagain.com.np/magento-2-set-unset-get-session/

for more specific answer please share the exact event or requirement when you want to use checkout session.

Related Topic