วิธีการบล็อกบางรัฐใน WooCommerce

เผยแพร่แล้ว: 2019-07-11

คุณมีบางอย่างที่จะขายแต่ไม่ต้องการขายให้กับทุกรัฐในประเทศของคุณด้วยเหตุผลด้านลอจิสติกส์ กฎหมายหรือเหตุผลอื่น ๆ หรือไม่?

ในสถานการณ์เช่นนี้ คุณสามารถบล็อกบางรัฐใน WooCommerce ได้

บล็อกบางรัฐใน WooCommerce

ให้ฉันอธิบายวิธีที่คุณสามารถบล็อก จำกัด หรืออนุญาตบางรัฐในประเทศใด ๆ ที่คุณขาย...

รหัสด้านล่างแสดงรายการของรัฐทั้งหมดในสหรัฐอเมริกา

ตอนนี้ เพื่อบล็อกการขายในบางรัฐ คุณต้องลบสถานะที่คุณไม่ต้องการขาย

กล่าวอีกนัยหนึ่ง การทำรายการประกอบด้วยรัฐที่คุณขายให้เท่านั้น ง่ายๆ อย่างนั้น…

 /** * Sell only in specific states * Remove the states not eligible to purchase * Final list is of states that CAN purchase */ add_filter( 'woocommerce_states', 'wpglorify_restrict_states' ); function wpglorify_restrict_states( $states ) { $states['US'] = array( 'AL' => __( 'Alabama', 'woocommerce' ), 'AK' => __( 'Alaska', 'woocommerce' ), 'AZ' => __( 'Arizona', 'woocommerce' ), 'AR' => __( 'Arkansas', 'woocommerce' ), 'CA' => __( 'California', 'woocommerce' ), 'CO' => __( 'Colorado', 'woocommerce' ), 'CT' => __( 'Connecticut', 'woocommerce' ), 'DE' => __( 'Delaware', 'woocommerce' ), 'DC' => __( 'District Of Columbia', 'woocommerce' ), 'FL' => __( 'Florida', 'woocommerce' ), 'GA' => _x( 'Georgia', 'US state of Georgia', 'woocommerce' ), 'HI' => __( 'Hawaii', 'woocommerce' ), 'ID' => __( 'Idaho', 'woocommerce' ), 'IL' => __( 'Illinois', 'woocommerce' ), 'IN' => __( 'Indiana', 'woocommerce' ), 'IA' => __( 'Iowa', 'woocommerce' ), 'KS' => __( 'Kansas', 'woocommerce' ), 'KY' => __( 'Kentucky', 'woocommerce' ), 'LA' => __( 'Louisiana', 'woocommerce' ), 'ME' => __( 'Maine', 'woocommerce' ), 'MD' => __( 'Maryland', 'woocommerce' ), 'MA' => __( 'Massachusetts', 'woocommerce' ), 'MI' => __( 'Michigan', 'woocommerce' ), 'MN' => __( 'Minnesota', 'woocommerce' ), 'MS' => __( 'Mississippi', 'woocommerce' ), 'MO' => __( 'Missouri', 'woocommerce' ), 'MT' => __( 'Montana', 'woocommerce' ), 'NE' => __( 'Nebraska', 'woocommerce' ), 'NV' => __( 'Nevada', 'woocommerce' ), 'NH' => __( 'New Hampshire', 'woocommerce' ), 'NJ' => __( 'New Jersey', 'woocommerce' ), 'NM' => __( 'New Mexico', 'woocommerce' ), 'NY' => __( 'New York', 'woocommerce' ), 'NC' => __( 'North Carolina', 'woocommerce' ), 'ND' => __( 'North Dakota', 'woocommerce' ), 'OH' => __( 'Ohio', 'woocommerce' ), 'OK' => __( 'Oklahoma', 'woocommerce' ), 'OR' => __( 'Oregon', 'woocommerce' ), 'PA' => __( 'Pennsylvania', 'woocommerce' ), 'RI' => __( 'Rhode Island', 'woocommerce' ), 'SC' => __( 'South Carolina', 'woocommerce' ), 'SD' => __( 'South Dakota', 'woocommerce' ), 'TN' => __( 'Tennessee', 'woocommerce' ), 'TX' => __( 'Texas', 'woocommerce' ), 'UT' => __( 'Utah', 'woocommerce' ), 'VT' => __( 'Vermont', 'woocommerce' ), 'VA' => __( 'Virginia', 'woocommerce' ), 'WA' => __( 'Washington', 'woocommerce' ), 'WV' => __( 'West Virginia', 'woocommerce' ), 'WI' => __( 'Wisconsin', 'woocommerce' ), 'WY' => __( 'Wyoming', 'woocommerce' ), 'AA' => __( 'Armed Forces (AA)', 'woocommerce' ), 'AE' => __( 'Armed Forces (AE)', 'woocommerce' ), 'AP' => __( 'Armed Forces (AP)', 'woocommerce' ), 'AS' => __( 'American Samoa', 'woocommerce' ), 'GU' => __( 'Guam', 'woocommerce' ), 'MP' => __( 'Northern Mariana Islands', 'woocommerce' ), 'PR' => __( 'Puerto Rico', 'woocommerce' ), 'UM' => __( 'US Minor Outlying Islands', 'woocommerce' ), 'VI' => __( 'US Virgin Islands', 'woocommerce' ), ); return $states; }

ขายเพียงรัฐเดียว

นี่คือตัวอย่างโค้ดด้านบน สมมติว่าคุณกำลังขายผักผลไม้สดและต้องการขายให้กับประเทศบ้านเกิดของคุณเท่านั้น

เพราะคุณกำลังขายของสด เช่น ผลไม้ ผัก และไม่มีระบบจัดส่งที่เหมาะสมในการจัดส่งทั่วประเทศ

สมมติว่าคุณมาจากรัฐแคลิฟอร์เนียสำหรับตัวอย่างนี้ ด้วยรหัสด้านล่าง คุณสามารถลบทุกรัฐอื่นยกเว้นแคลิฟอร์เนียได้

 // Only one state. example California in the US add_filter( 'woocommerce_states', 'wpglorify_restrict_states' ); function wpglorify_restrict_states( $states ) { $states['US'] = array( 'CA' => __( 'California', 'woocommerce' ), ); return $states; }

ตอนนี้เมื่อลูกค้าไปที่หน้าชำระเงิน พวกเขาจะเห็นเฉพาะแคลิฟอร์เนียในตัวเลือกที่อยู่แบบเลื่อนลง ไม่ใช่รัฐอื่นๆ


จำกัดรัฐจากประเทศอื่น ๆ

โซลูชันนี้ไม่ได้มีไว้สำหรับสหรัฐอเมริกาเท่านั้น ไม่ว่าคุณจะมาจากประเทศใด คุณจะต้องเปลี่ยนชื่อและรหัสประเทศและรัฐเท่านั้น

นี่คือตัวอย่างของประเทศออสเตรเลีย

 /** * list of Australian states to sell */ add_filter( 'woocommerce_states', 'wpglorify_restrict_states' ); function wpglorify_restrict_states( $states ) { $states['AU'] = array( 'ACT' => __( 'Australian Capital Territory', 'woocommerce' ), 'NSW' => __( 'New South Wales', 'woocommerce' ), 'NT' => __( 'Northern Territory', 'woocommerce' ), 'QLD' => __( 'Queensland', 'woocommerce' ), 'SA' => __( 'South Australia', 'woocommerce' ), 'TAS' => __( 'Tasmania', 'woocommerce' ), 'VIC' => __( 'Victoria', 'woocommerce' ), 'WA' => __( 'Western Australia', 'woocommerce' ), ); return $states; }

ฉันได้รวบรวมรายชื่อเกือบทุกรหัสประเทศและรวมรัฐของบางประเทศเพื่อให้คุณค้นหารหัสประเทศและรัฐของคุณที่นี่

วิธีเพิ่มโค้ด PHP

ปลั๊กอิน Code Snippets ช่วยให้ไม่เพียงเพิ่มข้อมูลโค้ด PHP ลงในเว็บไซต์ของคุณ แต่ยังจัดการข้อมูลโค้ดทั้งหมดที่คุณเพิ่มได้อย่างง่ายดายอีกด้วย

คุณสามารถเปิดใช้งานและปิดใช้งานตัวอย่างบางส่วนได้ และยังเพิ่มหมายเหตุเกี่ยวกับสิ่งที่พวกเขาทำอีกด้วย มีการจัดการข้อผิดพลาดที่ดีกว่าเพื่อหลีกเลี่ยงสถานการณ์ข้อผิดพลาด PHP

ในการติดตั้ง เพียงไปที่ Plugins > Add New และค้นหา Code Snippets

วิธีดั้งเดิมหรือวิธีปกติในการเพิ่มตัวอย่าง PHP ให้กับธีมของคุณคือการเพิ่มโดยตรงในไฟล์ functions.php ของธีมของคุณ

อย่างไรก็ตาม ตรวจสอบให้แน่ใจว่าคุณใช้ธีมย่อย มิฉะนั้น คุณจะสูญเสียการเปลี่ยนแปลงทั้งหมดเมื่อคุณอัปเดตธีม