অনিপেজ চেকআউটে পছন্দসই কাস্টম শিপিং পদ্ধতিটি কাস্টম ইনপুট টেক্সারিয়াকে দেখায় Make


9

আমি সফলভাবে কাস্টম শিপিংয়ের পদ্ধতিটি এভাবে যুক্ত করেছি:

অ্যাপ্লিকেশন / ইত্যাদি / config.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
    <default>
        <carriers>
            <lime>
                <active>1</active>
                <allowed_methods>delivery</allowed_methods>
                <methods>delivery</methods>
                <type>NAMESPACE</type>
                <sallowspecific>0</sallowspecific>
                <model>Namespace\Module\Model\Carrier</model>
                <name>Namespace_Module custom Shipping</name>
                <title>Namespace_Module custom Shipping</title>
                <handling_type>F</handling_type>
            </lime>
        </carriers>
    </default>
</config>

অ্যাপ্লিকেশন / কোড / নামস্থান / মডিউল / মডেল / Carrier.php

public function collectRates(RateRequest $request)
{
    if (!$this->getConfigFlag('active')) {
        return false;
    } 
    $result = $this->_rateResultFactory->create(); 
    $method = $this->_rateMethodFactory->create(); 
    $method->setCarrier('HILO');
    $method->setCarrierTitle('HILO'); 
    $method->setMethod('Fast');
    $method->setMethodTitle('Fast'); 
    $amount = $this->getConfigData('price'); 
    $method->setPrice($amount);
    $method->setCost($amount); 
    $result->append($method);
    return $result;
}

এটি চেকআউট পৃষ্ঠায় প্রদর্শিত হয়, তবে যখন ব্যবহারকারী আমার কাস্টম শিপিং পদ্ধতিটি চয়ন করে আমি কাস্টম পাঠ্য অঞ্চল ইনপুট ডেটা প্রদর্শন করতে চাই এবং আমি কাস্টম ইনপুট পাঠ্য অঞ্চল ডেটা সংরক্ষণ করতে পারি।

আমি দেখতে চাই এটি এখানে:

এখানে চিত্র বর্ণনা লিখুন


2
হাই, আপনি এই ক্ষেত্রটি কীভাবে যুক্ত করলেন? আপনি একটি কোড পেতে আমাকে সাহায্য করতে পারেন?
মুজাহিদ

উত্তর:


2

আপনার কাস্টম শিপিং পদ্ধতিটি নির্বাচনের পরে একটি কাস্টম ইনপুট ক্ষেত্রটি প্রদর্শনের জন্য, আপনাকে পদ্ধতি ইভেন্ট নির্বাচন করতে সাবস্ক্রাইব করতে একটি জেএস ব্লক যুক্ত করতে হবে:

Checkout_index_index.xML লেআউটে একটি কাস্টম phtml যুক্ত করুন

তারপরে আপনার পিএইচটিএমএলে পরের ব্লকটি যুক্ত করুন:

<script type="text/javascript">
    require([
        'jquery',
        'Magento_Checkout/js/model/quote',
    ], function (jQuery, quote) {
        jQuery(document).ready(function () {
            quote.shippingMethod.subscribe(function (value) {
                if (quote.shippingMethod() && quote.shippingMethod().carrier_code == 'your_custom_shipping_method_code') {
                    var customBlock = "<div class ='custom-information'><input type="text" id="your_custom_id"></div>";
                    if((!$('.custom-information').length > 0)) {
                        $('#checkout-shipping-method-load').append(customBlock);
                    }
                });
            });
        });
    });
</script>

উপরের কোডটি সহ, আপনি আপনার কাস্টম শিপিং পদ্ধতির নীচে আপনার পছন্দসই ইনপুট যুক্ত করবেন।

এর পরে, আপনার নিজের কাস্টম মানটি সংরক্ষণ করতে একটি প্লাগইন তৈরি করতে হবে।

চেক করুন: ম্যাজেন্টো \ চেকআউট \ মডেল \ গেস্টশিপিং ইনফরমেশনম্যানেজমেন্ট

আমি এটি আপনাকে সাহায্য করে আশা করি। শুভেচ্ছা, পাবলো


2
আপনি দয়া করে আরও কিছু ব্যাখ্যা করতে পারেন
মুজাহিদ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.