كيفية حظر بعض الدول في 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.

لتثبيته ، ما عليك سوى الانتقال إلى الإضافات> إضافة جديد والبحث عن قصاصات التعليمات البرمجية .

تتمثل الطريقة التقليدية أو العادية لإضافة مقتطفات PHP إلى السمة الخاصة بك في الإضافة مباشرة إلى ملف function.php الخاص بالقالب.

ومع ذلك ، تأكد من أنك تستخدم موضوعًا فرعيًا وإلا ستفقد جميع التغييرات بمجرد تحديث السمة الخاصة بك.