ব্যাক-এন্ডে আমি রাস্তার ঠিকানাটিতে 3 টি লাইন রেখেছি।
আমি প্রতিটি ক্ষেত্রে একটি পৃথক স্থানধারক রাখতে চাই:
- রাস্তা
- বিল্ডিং / অ্যাপার্টমেন্ট
- ফোন
এইভাবে ব্যবহারকারী আরও কাঠামোগত উপায়ে ডেটা প্রবেশ করতে পারেন।
একটি অনুরূপ প্রশ্ন এখানে পাওয়া যাবে:
তবে উত্তরগুলি রাস্তার ঠিকানা ক্ষেত্রগুলিতে স্থানধারীদের অন্তর্ভুক্ত করার জন্য কোনও সমাধান সরবরাহ করে না ।
আমি যা অর্জন করতে চাই তা প্রতিটি রাস্তার ঠিকানা ক্ষেত্রের জন্য পৃথক স্থানধারক সেট করে ।
আমার কোড:
অ্যাপ্লিকেশন / কোড / জেএসপি / স্থানধারক / ইত্যাদি / মডিউল.এক্সএমএল:
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Jsp_Placeholder" setup_version="2.0.0" />
</config>
অ্যাপ্লিকেশন / কোড / জেএসপি / প্লেসহোল্ডার / রেজিস্ট্রেশন.এফপি:
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Jsp_Placeholder',
__DIR__
);
অ্যাপ্লিকেশন / কোড / জেএসপি / স্থানধারক / ইত্যাদি / di.xML:
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\Checkout\Block\Checkout\AttributeMerger">
<plugin name="shippingAddress" type="Jsp\Placeholder\Plugin\Checkout\Block\Checkout\AttributeMerger\Plugin"/>
</type>
</config>
অ্যাপ্লিকেশন / কোড / জেএসপি / প্লেসহোল্ডার / প্লাগইন / চেকআউট / ব্লক / চেকআউট / অ্যাট্রিবিউটমার্জার / প্লাগইন.এফপি:
<?php
namespace Jsp\Placeholder\Plugin\Checkout\Block\Checkout\AttributeMerger;
class Plugin {
public function afterMerge(\Magento\Checkout\Block\Checkout\AttributeMerger $subject, $result)
{
if (array_key_exists('street', $result)) {
$result['street']['children'][0]['placeholder'] = __('Calle y número exterior');
$result['street']['children'][1]['placeholder'] = __('Interior / Edificio / Depto.');
$result['street']['children'][2]['placeholder'] = __('Colonia');
}
return $result;
}
}