WooCommerce: قصر الشحن على دولة واحدة فقط

A VPN is an essential component of IT security, whether you’re just starting a business or are already up and running. Most business interactions and transactions happen online and VPN

تم طلب مقتطف اليوم على نطاق واسع من قبل العديد من القراء والعملاء ومحبي WooCommerce. لقد رأينا بالفعل في الماضي كيفية قصر القوائم المنسدلة للولاية على ولاية واحدة فقط (لكل من الشحن والفوترة) وكيفية البيع لولاية واحدة فقط (الفوترة).

ومع ذلك ، لم نقم مطلقًا بتغطية إعداد أكثر شيوعًا: ماذا يحدث عندما يُسمح بالفوترة لكل ولاية ولكن الشحن محدود؟

من أجل الحصول على القليل من المساعدة ، تواصلت مع Diego Zanella ، عبقري WooCommerce وهو أيضًا مؤلف  البرنامج الإضافي Aelia Currency Switcher لـ WooCommerce .

مقتطف PHP (1 من 2): اسمح بالشحن إلى One State @ WooCommerce Cart Shipping Calculator

/**
 * @snippet       Ship to One State @ WooCommerce Cart Shipping Calculator
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Diego Zanella
 * @compatible    WooCommerce 3.6.4
 * @donate $9     https://businessbloomer.com/bloomer-armada/
 */
  
add_filter( 'woocommerce_states', 'aelia_cart_filter_US_states' );
  
function aelia_cart_filter_US_states( $states ) {
if ( is_cart() ) {
   $states['US'] = array(
      'PA' => 'Pennsylvania',
   );
}
return $states;
}

WooCommerce: السماح بالشحن إلى دولة واحدة فقط في حاسبة شحن عربة التسوق

WooCommerce: السماح بالشحن إلى دولة واحدة فقط في حاسبة شحن عربة التسوق

مقتطف PHP (2 من 2): السماح بالشحن إلى صفحة تسجيل الخروج ولاية واحدة فقط @ WooCommerce

ملاحظة: لن يعمل هذا إلا إذا قمت بتقييد الشحن لدولة معينة عبر إعدادات WooCommerce. أيضًا ، قد يحد هذا المقتطف من الفوترة أيضًا – في هذه الحالة تحقق من المقتطف البديل أدناه.

/**
 * @snippet       Ship to One State @ WooCommerce Checkout #1
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Rodolfo Melogli
 * @compatible    WooCommerce 3.6.4
 * @donate $9     https://businessbloomer.com/bloomer-armada/
 */
 
add_filter( 'woocommerce_countries_shipping_country_states', 'bbloomer_set_checkout_shipping_state' );
   
function bbloomer_set_checkout_shipping_state( $states ) {
   $states[ 'US' ] = array( 'PA' => __( 'Pennsylvania', 'woocommerce' ) );
     return $states;
}

مقتطف بديل – في حالة فشل كل شيء آخر:

/**
 * @snippet       Ship to One State @ WooCommerce Checkout #2
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Rodolfo Melogli
 * @compatible    WooCommerce 3.6.4
 * @donate $9     https://businessbloomer.com/bloomer-armada/
 */
 
add_action( 'wp_footer', 'aelia_checkout_shipping_filter_US_states' );
   
function aelia_checkout_shipping_filter_US_states() {
   if ( ! is_checkout() ) {
      return;
   }
   ?>
      
   <script>
   jQuery(document).ready(function($) {
 
      $(document.body).on('country_to_state_changed', function() {
 
         function set_shipping_state(state) {
            var $shipping_state = $('#shipping_state');
            var $shipping_state_option = $('#shipping_state option[value="' + state + '"]');
            var $shipping_state_option_no = $('#shipping_state option[value!="' + state + '"]');
            $shipping_state_option_no.remove();
            $shipping_state_option.attr('selected', true);
         }
 
         var $shipping_country = $('#shipping_country');
 
         var new_shipping_state = '';
 
         switch($shipping_country.val()) {
            case 'US':
               new_shipping_state = 'PA';
               break;
         }
 
         if( ! $.isEmptyObject(new_shipping_state)) {
            set_shipping_state(new_shipping_state);
         } 
 
      });
 
   });  
   </script>
       
   <?php
}

WooCommerce: السماح بالشحن إلى ولاية واحدة فقط عند الخروج

WooCommerce: السماح بالشحن إلى ولاية واحدة فقط عند الخروج

المنشورات ذات الصلة:

WooCommerce: إخفاء أسعار الشحن في حالة توفر الشحن المجاني

WooCommerce: قصر الشحن على دولة واحدة فقط

WooCommerce: أضف نصًا أسفل كل صفحة متجر في كل منتج

WooCommerce: أضف إشعارات الشحن على صفحة الخروج

WooCommerce: تم فتح “الشحن إلى عنوان مختلف” افتراضيًا

WooCommerce: أضف رسوم الشحن للدول غير القارية

WooCommerce: إخفاء سعر الشحن إذا كانت فئة الشحن @ سلة التسوق

WooCommerce: أضف حقل رقم المنزل @ Checkout

WooCommerce: أسعار الشحن حسب مبلغ الطلب

WooCommerce: الشحن بالوزن (بدون مكون إضافي!)

أين تضيف هذا المقتطف؟

يمكنك وضع مقتطفات PHP في الجزء السفلي من ملف function.php القالب الفرعي الخاص بك (احذف “؟>” إذا كان لديك هناك). من ناحية أخرى ، ينتقل CSS في ملف style.css الخاص بسمة الطفل. تأكد من أنك تعرف ما تفعله عند تحرير مثل هذه الملفات – إذا كنت بحاجة إلى مزيد من الإرشادات ، فيرجى إلقاء نظرة على الفيديو التعليمي المجاني الخاص بي “أين تضع تخصيص WooCommerce؟”

هل هذا المقتطف (لا يزال) يعمل؟

يرجى إعلامي في التعليقات إذا كان كل شيء يعمل كما هو متوقع. يسعدني مراجعة المقتطف إذا أبلغت بخلاف ذلك (يرجى تقديم لقطات شاشة). لقد اختبرت هذا الكود مع موضوع Storefront وإصدار WooCommerce المذكور أعلاه واستضافة صديقة لـ وورد بريس على PHP 7.3.

إذا كنت تعتقد أن هذا الرمز وفر لك الوقت والمال ، فلا تتردد في الانضمام إلى أكثر من 14000 مشترك في WooCommerce Weekly للحصول على تحديثات منشورات المدونة أو أكثر من 250 من مؤيدي Business Bloomer لمدة 365 يومًا من مزايا WooCommerce . شكرا لكم مقدما 🙂

هل تحتاج إلى مساعدة في WooCommerce؟

تحقق من دروس الفيديو المجانية هذه. يمكنك تعلم كيفية تخصيص WooCommerce بدون مكونات إضافية غير ضرورية ، وكيفية تكوين إعدادات البرنامج المساعد WooCommerce بشكل صحيح وحتى كيفية إتقان استكشاف أخطاء WooCommerce في حالة حدوث خطأ!

توضيح

اي عملية نسخ او اقتباس او ترجمة او نقل تم لاغراض علمية وتدريبية وتعليمية بحته وقد تم انشاء هذا المحتوى بمعرفة خبراء في مجال التقنية اما عن طريق إنشاء او تحرير او نقل او نسخ او اقتباس او ترجمة المحتوى من مصادر خاصة او عامة وكل ذلك ضمن حقوق النشر المتعارف عليها.

اي أخطاء تظهر في المحتوى مهما كان نوعه او تصنيفه يمكنك تحرير رسالة فورية لادارة موثوق لاجل تصحيح هذه الاخطاء، وسنكون شاكرين لك في حال قمت بالتعاون معنا لاجل اصلاح هذه الاخطاء.

شاركنا رايك وتقييمك للموضوع

{{ reviewsTotal }}{{ options.labels.singularReviewCountLabel }}
{{ reviewsTotal }}{{ options.labels.pluralReviewCountLabel }}
{{ options.labels.newReviewButton }}
{{ userData.canReview.message }}