ביטול שדות כתובת במשלוח עבור מוצרים וירטואלים

תוכן עניינים

מתי יש צורך לערוך את שדות הטופס

ווקומרס הוא פלאג-אין מצויין עם מלא יתרונות, אבל מאיזה שהיא סיבה, אין אפשרות מובנת ופשוטה להחליט איזה שדות יהיו בטופס פרטים בעמוד הצ'ק אאוט. ולפעמים זה ממש ממש נדרש! 
נניח שאתם מוכרים מוצר דיגיטלי, קורס או סדנה, במקרה כזה ממש אין צורך למלא את כתובת הלקוח.

באתרי ווקומרס, עמוד הצ'ק אאוט הוא אחד העמודים הרגישים ביותר. כל פעולה מיותרת בעמוד הצ'ק אאוט יכולה לגרום לנטישת התהליך. לא חבל? 

אפשר להשתמש בתוספים שיעזרו לך לשלוט בשדות הטופס ואפשר להשתמש בקוד החמוד הבא:

הקוד לקוח מהאתר הזה https://www.businessbloomer.com

הקוד:

				
					/**
 * @snippet       Hide Fields if Virtual @ WooCommerce Checkout
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Rodolfo Melogli
 * @compatible    WooCommerce 7
 * @donate $9     https://businessbloomer.com/bloomer-armada/
 */
 
add_filter( 'woocommerce_checkout_fields', 'bbloomer_simplify_checkout_virtual' );
  
function bbloomer_simplify_checkout_virtual( $fields ) {
   $only_virtual = true;
   foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
      // Check if there are non-virtual products
      if ( ! $cart_item['data']->is_virtual() ) $only_virtual = false;
   }
   if ( $only_virtual ) {
      unset($fields['billing']['billing_company']);
      unset($fields['billing']['billing_address_1']);
      unset($fields['billing']['billing_address_2']);
      unset($fields['billing']['billing_city']);
      unset($fields['billing']['billing_postcode']);
      unset($fields['billing']['billing_state']);
      unset($fields['billing']['billing_phone']);
	  unset($fields['billing']['billing_shipping_floor_no']);
	  unset($fields['billing']['billing_shipping_apartment_no']);
      add_filter( 'woocommerce_enable_order_notes_field', '__return_false' );
   }
   return $fields;
}
				
			

הקוד אומר שאם יש רק מוצרים וירטואלים בעגלה השדות המתוארים משורה 18 עד שורה 26 לא יופיעו. 
אתם יכולים לשחק עם השורות על פי הצורך. לדוגמה, אם אתם רוצים שהלקוח ישאיר טלפון אפשר למחוק את שורה מספר 24.

איפה שמים את הקוד?

טוב ששאלת! יש שתי דרכים מרכזיות:

  1. להוסיף את הקוד בתבנית הבת. 
    עיצוב > עורך קבצי תבנית > פונקציות (סרגל צד שמאל) > להדביק את הקוד בסוף הקוד הקיים ולעדכן.
  2. אם אין לכם גישה לתבנית הבת, אפשר להשתמש בתוסף הבא Code Snippets (דרך תוספים, או ישירות). אחרי ההתקנה פשוט ליצור חדש (Add new) לבחור את סוג הקוד - php/html/js/css ולהדביק את הקוד
PHP SNIPPT

וזהו, הקסם בוצע! בהצלחה 🙂

תודה!

אני יעבור על כל החומר ששלחת לי ואחזור אלייך בתוך 48 שעות לכל היותר.