আমি নতুন শিপিং পদ্ধতি তৈরি করছি এবং শিপিংয়ের হারগুলি চেকআউট করার জন্য আমার নতুন কলাম যুক্ত করা দরকার। ডেটা কাস্টম শিপিংয়ের পদ্ধতি সেটিংস থেকে আসে, উদাহরণস্বরূপ পদ্ধতির বিবরণ। বা কিছু ইনপুট ক্ষেত্র যেখানে গ্রাহক তথ্য যুক্ত করতে পারেন (ডেটা সম্ভবত উদ্ধৃতিতে এবং পরে ক্রমে সংরক্ষণ করা হবে)।
সম্ভবত সবার সহজতম অংশটি হ'ল টেম্পলেট ব্যবহার করে implement
Magento_Checkout/web/template/shipping.html
এটি শুধু এটি প্রয়োজন
<div data-bind="text: method.description"></div>
সমস্যাটি হ'ল আমি কীভাবে কাস্টম ডেটা যুক্ত করতে পারি তা বুঝতে পারি না। এটি যোগ করার জন্য এটি যথেষ্ট নয়:
public function collectRates(RateRequest $request)
{
if (!$this->isActive()) return false;
$method = $this->rateMethodFactory->create();
$method->setData('carrier', $this->getCarrierCode());
$method->setData('carrier_title', $this->getConfigData('title'));
$method->setData('method_title', $this->getConfigData('title'));
$method->setData('method', $this->getCarrierCode());
$method->setPrice($this->_price);
$method->setData('cost', $this->_price);
// custom
$method->setData('description', $this->getConfigData('description'));
$result = $this->rateResultFactory->create();
$result->append($method);
return $result;
}
এইচটিএমএলের ডেটা জেএস রেট () থেকে আসে, যা এপিআই থেকে ডেটা পায়:
<route url="/V1/carts/:cartId/shipping-methods" method="GET">
<service class="Magento\Quote\Api\ShippingMethodManagementInterface" method="getList"/>
<resources>
<resource ref="Magento_Cart::manage" />
</resources>
</route>
এর পরে অনেকগুলি পদক্ষেপ রয়েছে যখন কিছু আসলে সংগ্রহ করা হয়। আমি পেয়েছি
ম্যাজেন্টো \ উক্তি \ মডেল \ কার্ট \ শিপিংমেডকনভার্টার মডেল টোডেটাঅবজেক্ট ()
এটি সবচেয়ে প্রতিশ্রুতিবদ্ধ লাগছিল তবে আমি যদি এতে আমার গুণাবলী যুক্ত করার চেষ্টা করি তবে কিছুই ঘটে না।
সুতরাং আমার প্রশ্নটি হল, যদি শিপিং রেটে নতুন ডেটা যুক্ত করার কোনও উপায় থাকে? এম 1 এ এটি সম্ভব ছিল। এটি এম 2 সম্ভব না হলে এটি পাগল হবে।
এটি সম্ভব হওয়ার অনেক কারণ রয়েছে। উদাহরণস্বরূপ যদি আমি একাধিক স্টোর ড্রপ ডাউন বা অনুরূপ কিছু দিয়ে স্টোর পদ্ধতিতে বাছাই করতে চাইতাম।