ฉันใช้ magento 2.0.7 เป็นไปได้หรือไม่ที่จะกำหนดเขตข้อมูลเมืองหน้าเช็คเอาต์ (ข้อความ) เป็นรายการแบบเลื่อนลง?
ฉันใช้ magento 2.0.7 เป็นไปได้หรือไม่ที่จะกำหนดเขตข้อมูลเมืองหน้าเช็คเอาต์ (ข้อความ) เป็นรายการแบบเลื่อนลง?
คำตอบ:
ใช่.
วิธีที่ง่ายที่สุดคือการเพิ่มเอนทิตีใหม่ที่เก็บค่าเมืองของคุณ ในส่วนหน้าเพียงเปลี่ยนประเภทอินพุตเป็นดรอปดาวน์และโหลดรายชื่อเมือง เมื่อผู้ใช้เลือกเขตข้อมูลจากรายการแบบหล่นลงให้เก็บค่าข้อความ (เหมือนตอนนี้) คุณสามารถตรวจสอบได้ว่าเมืองที่เลือกนั้นเป็นเมืองที่ถูกต้องจากรายการเมืองของคุณก่อนที่จะเก็บข้อมูลหรือไม่ วิธีนี้คุณไม่ต้องเปลี่ยนอะไรมากมาย
วิธีการขั้นสูงเพิ่มเติม (ถ้าจำเป็น) ก็คือการเพิ่มความสัมพันธ์กับdirectory_country
และ / หรือdirectory_country_region
ตารางเพื่อแสดงเฉพาะเมืองที่เป็นของประเทศหรือภูมิภาคเฉพาะที่เลือกในการชำระเงิน
สำหรับการประเมินค่าจัดส่งและภาษีของคุณภาพเยี่ยมคุณจะต้องเขียนทับคลาส \ Magento \ Checkout \ Block \ Cart \ Cart \ LayoutProcessor
$elements = [
'city' => [
'visible' => true,
'formElement' => 'select',
'label' => __('City'),
'value' => '',
'options' => array_option(),
],