วิธีแก้ไขรายละเอียดการเรียกเก็บเงิน หน้าชำระเงิน WooCommerce

เผยแพร่แล้ว: 2021-02-22

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

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

วิธีแก้ไขรายละเอียดการเรียกเก็บเงิน WooCommerce (ลบฟิลด์, ปิดใช้งานการตรวจสอบ, เพิ่มตัวยึดตำแหน่งที่กำหนดเอง & เพิ่มป้ายกำกับแบบฟอร์มที่กำหนดเอง)

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

WooCommerce แก้ไขรายละเอียดการเรียกเก็บเงินโดยใช้ปลั๊กอินฟรี

มีปลั๊กอินมากกว่าโหลทั้งปลั๊กอินฟรีและพรีเมียมที่คุณสามารถใช้เพื่อแก้ไขรายละเอียดการเรียกเก็บเงินของ WooCommerce วิธีแก้ไขรายละเอียดการเรียกเก็บเงิน woocommerce

ปลั๊กอินแต่ละตัวมีคุณสมบัติเฉพาะและการออกแบบอินเทอร์เฟซ ปลั๊กอินฟรีที่ดีที่สุดในการแก้ไขรายละเอียดการเรียกเก็บเงินใน WooCommerce คือ Checkout Field Editor (Checkout Manager) สำหรับ WooCommerce

ปลั๊กอินนี้ช่วยให้คุณแก้ไขฟิลด์การเรียกเก็บเงิน การจัดส่ง และช่องเพิ่มเติมหลักในการชำระเงิน WooCommerce

ในแบบฟอร์มแก้ไข คุณสามารถเพิ่มตัวเลือกฟิลด์ที่กำหนดเองได้ เช่น: ชื่อ, ประเภท, ป้ายชื่อ, ตัวยึดตำแหน่ง, คลาส, คลาสป้ายกำกับ, กฎการตรวจสอบ ฯลฯ (ความพร้อมใช้งานของตัวเลือกเหล่านี้อาจเปลี่ยนแปลงตามประเภทฟิลด์)

WooCommerce แก้ไขรายละเอียดการเรียกเก็บเงินโดยใช้ข้อมูลโค้ด

คุณยังสามารถแก้ไขรายละเอียดการเรียกเก็บเงินในหน้าชำระเงินของ WooCommerce โดยเพิ่มข้อมูลโค้ดลงในไฟล์ functions.php ของธีมของคุณ

ลบฟิลด์การเรียกเก็บเงินของ WooCommerce Checkout

ขั้นแรก คุณสามารถลบฟิลด์การเรียกเก็บเงินที่คุณไม่ชอบได้โดยใช้ข้อมูลโค้ดด้านล่าง:

 

/**
 * แก้ไขรายละเอียดการเรียกเก็บเงินเพื่อลบฟิลด์ที่คุณไม่ต้องการ 
 **/
ฟังก์ชัน njengah_remove_checkout_fields ($fields) {

    // ช่องการเรียกเก็บเงิน
    unset( $fields['billing']['billing_company'] ); ยกเลิกการตั้งค่า
    unset( $fields['billing']['billing_email'] );
    unset( $fields['billing']['billing_phone'] ); ยกเลิกการตั้งค่า
    unset( $fields['billing']['billing_state'] );
    unset( $fields['billing']['billing_first_name'] );
    unset( $fields['billing']['billing_last_name'] );
    unset( $fields['billing']['billing_address_1'] );
    unset( $fields['billing']['billing_address_2'] );
    unset( $fields['billing']['billing_city'] );
    unset( $fields['billing']['billing_postcode'] ); ยกเลิกการตั้งค่า
	
	ส่งคืนฟิลด์ $;
	
} 

	add_filter( 'woocommerce_checkout_fields', 'njengah_remove_checkout_fields' ); 

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

นี่เป็นวิธีที่เร็วที่สุดในการลบฟิลด์การเรียกเก็บเงินออกจากหน้าชำระเงินของ WooCommerce โดยไม่ต้องใช้ปลั๊กอิน

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

 

ฟังก์ชัน njengah_remove_checkout_fields_keep_email_name ($fields) {

    // ช่องการเรียกเก็บเงิน
    unset( $fields['billing']['billing_company'] ); ยกเลิกการตั้งค่า
    unset( $fields['billing']['billing_phone'] ); ยกเลิกการตั้งค่า
    unset( $fields['billing']['billing_state'] );
    unset( $fields['billing']['billing_address_1'] );
    unset( $fields['billing']['billing_address_2'] );
    unset( $fields['billing']['billing_city'] );
    unset( $fields['billing']['billing_postcode'] ); ยกเลิกการตั้งค่า
	
	ส่งคืนฟิลด์ $;
	
} 

	add_filter( 'woocommerce_checkout_fields', 'njengah_remove_checkout_fields_keep_email_name' ); 

ลบฟิลด์การเรียกเก็บเงินของ WooCommerce Checkout และฟิลด์การจัดส่ง

คุณยังสามารถขยายตรรกะนี้เพื่อลบฟิลด์การจัดส่งและฟิลด์การเรียกเก็บเงิน ด้วย รหัสที่สมบูรณ์ที่จะลบฟิลด์การเรียกเก็บเงินและฟิลด์การจัดส่งมีดังนี้:

 

    ฟังก์ชัน njengah_remove_checkout_fields_billing_shipping ($fields) {
   
		// ช่องการเรียกเก็บเงิน
		unset( $fields['billing']['billing_company'] ); ยกเลิกการตั้งค่า
		unset( $fields['billing']['billing_email'] );
		unset( $fields['billing']['billing_phone'] ); ยกเลิกการตั้งค่า
		unset( $fields['billing']['billing_state'] );
		unset( $fields['billing']['billing_first_name'] );
		unset( $fields['billing']['billing_last_name'] );
		unset( $fields['billing']['billing_address_1'] );
		unset( $fields['billing']['billing_address_2'] );
		unset( $fields['billing']['billing_city'] );
		unset( $fields['billing']['billing_postcode'] ); ยกเลิกการตั้งค่า

		// เขตข้อมูลการจัดส่ง
		unset( $fields['shipping']['shipping_company'] ); ยกเลิกการตั้งค่า
		unset( $fields['shipping']['shipping_phone'] );
		unset( $fields['shipping']['shipping_state'] );
		unset( $fields['shipping']['shipping_first_name'] );
		unset( $fields['shipping']['shipping_last_name'] );
		unset( $fields['shipping']['shipping_address_1'] );
		unset( $fields['shipping']['shipping_address_2'] );
		unset( $fields['shipping']['shipping_city'] );
		unset( $fields['shipping']['shipping_postcode'] );

    ส่งคืนฟิลด์ $;
  } 
add_filter( 'woocommerce_checkout_fields', 'njengah_remove_checkout_fields_billing_shipping' ); 

ลบฟิลด์การเรียกเก็บเงินของ WooCommerce การชำระเงิน ฟิลด์การจัดส่ง และหมายเหตุการสั่งซื้อ

คุณยังสามารถลบช่องบันทึกคำสั่งซื้อที่อยู่ด้านล่างส่วนการเรียกเก็บเงินและส่วนการจัดส่งโดยใช้ตรรกะเดียวกัน แต่เพิ่มตัวเลือกการลบคำสั่งซื้อในความ order_comments เช่นเดียวกับในข้อมูลโค้ดที่รวมกันด้านล่าง:

 

    ฟังก์ชัน njengah_remove_checkout_fields_billing_shipping_order ($fields) {
   
		// ช่องการเรียกเก็บเงิน
		unset( $fields['billing']['billing_company'] ); ยกเลิกการตั้งค่า
		unset( $fields['billing']['billing_email'] );
		unset( $fields['billing']['billing_phone'] ); ยกเลิกการตั้งค่า
		unset( $fields['billing']['billing_state'] );
		unset( $fields['billing']['billing_first_name'] );
		unset( $fields['billing']['billing_last_name'] );
		unset( $fields['billing']['billing_address_1'] );
		unset( $fields['billing']['billing_address_2'] );
		unset( $fields['billing']['billing_city'] );
		unset( $fields['billing']['billing_postcode'] ); ยกเลิกการตั้งค่า

		// เขตข้อมูลการจัดส่ง
		unset( $fields['shipping']['shipping_company'] ); ยกเลิกการตั้งค่า
		unset( $fields['shipping']['shipping_phone'] );
		unset( $fields['shipping']['shipping_state'] );
		unset( $fields['shipping']['shipping_first_name'] );
		unset( $fields['shipping']['shipping_last_name'] );
		unset( $fields['shipping']['shipping_address_1'] );
		unset( $fields['shipping']['shipping_address_2'] );
		unset( $fields['shipping']['shipping_city'] );
		unset( $fields['shipping']['shipping_postcode'] );

                // ช่องสั่งซื้อ
                unset( $fields['order']['order_comments'] );

    ส่งคืนฟิลด์ $;
  } 
add_filter( 'woocommerce_checkout_fields', 'njengah_remove_checkout_fields_billing_shipping_order' ); 

WooCommerce แก้ไขข้อกำหนดหรือการตรวจสอบรายละเอียดการเรียกเก็บเงิน

เมื่อไม่มีการกรอกข้อมูลในฟิลด์การเรียกเก็บเงิน WooCommerce จะสร้างข้อผิดพลาดเช่นข้อผิดพลาดทั่วไป - รหัสไปรษณีย์สำหรับการเรียกเก็บเงินไม่ใช่รหัสไปรษณีย์ / ZIP ที่ถูกต้อง

สิ่งนี้เกิดขึ้นเนื่องจากโดยค่าเริ่มต้นจะมีคุณลักษณะการตรวจสอบความถูกต้องในช่องการชำระเงินสำหรับการเรียกเก็บเงินของ WooCommerce

ในการแก้ไขปัญหานี้และหลีกเลี่ยงข้อผิดพลาดเหล่านี้ไม่ให้แสดงขึ้นเมื่อเว้นฟิลด์ว่างไว้ คุณต้องลบการตรวจสอบรายละเอียดการเรียกเก็บเงินออก

ข้อมูลโค้ดด้านล่างจะลบการตรวจสอบความถูกต้องออกจากฟิลด์ Billing phone ซึ่งควรเพิ่มโค้ดนี้ลงในไฟล์ functions.php ของธีมที่ใช้งานอยู่

 /**
	 * ตัวอย่างการลบการตรวจสอบฟิลด์การเรียกเก็บเงิน
	 **/ 
 
		add_filter( 'woocommerce_billing_fields', 'njengah_remove_phone_field_validation');

		ฟังก์ชัน njengah_remove_phone_field_validation ($fields) {
		
			$fields['billing_phone']['required'] = false;
			
			ส่งคืนฟิลด์ $;
		}

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

$fields['billing_phone']['required'] = false;

WooCommerce แก้ไขตัวยึดรายละเอียดการเรียกเก็บเงินและป้ายกำกับ

อีกวิธีหนึ่งในการแก้ไขรายละเอียดการเรียกเก็บเงินของ WooCommerce คือการเปลี่ยนป้ายกำกับแบบฟอร์มหน้าชำระเงิน WooCommerce เริ่มต้นและผู้ถือตำแหน่ง คุณสามารถทำได้โดยใช้ข้อมูลโค้ดด้านล่าง:

 add_filter('woocommerce_checkout_fields', 'njengah_edit_checkout_placeholders_labels');
  
		ฟังก์ชัน njengah_edit_checkout_placeholders_labels($fields){
		
			 $fields['billing']['billing_company']['placeholder'] = 'ตัวยึดตำแหน่งที่กำหนดเอง';
			 $fields['billing']['billing_company']['label'] = 'ป้ายกำกับที่กำหนดเอง';
		 
		 ส่งคืนฟิลด์ $;
		 }

บทสรุป

ในบทช่วยสอนนี้ เราได้เน้นถึงวิธีต่างๆ ที่คุณสามารถแก้ไขรายละเอียดการเรียกเก็บเงินของ WooCommerce เพื่อปรับแต่งหน้าการชำระเงิน WooCommerce ให้เหมาะกับความต้องการของคุณ สิ่งสำคัญคือต้องจำไว้ว่าข้อมูลโค้ดเหล่านี้ทำงานในลักษณะเดียวกับการทำงานของปลั๊กอินที่แก้ไขรายละเอียดการเรียกเก็บเงิน รายละเอียดการจัดส่ง และหมายเหตุการสั่งซื้อ

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

มีหลายวิธีในการปรับแต่ง WooCommerce แต่โดยทั่วไปคือการซ่อนคุณลักษณะที่คุณไม่ชอบ ฉันได้แบ่งปันคำแนะนำที่ครอบคลุมเกี่ยวกับวิธีการซ่อนคุณลักษณะส่วนใหญ่ในร้านค้า WooCommerce ของคุณ Ultimate WooCommerce Hide Guide นี่อาจเป็นจุดเริ่มต้นที่ดีสำหรับการปรับแต่ง WooCommerce

หากคุณใช้ธีมเริ่มต้นของ WooCommerce – ธีมหน้าร้าน คุณสามารถเรียนรู้จาก 80+ เคล็ดลับการปรับแต่งหน้าร้าน เกี่ยวกับวิธีการทำให้ร้านค้า WooCommerce ของคุณมีรูปลักษณ์และความรู้สึกแบบมืออาชีพ

สุดท้ายนี้ ฉันพร้อมเสมอที่จะช่วยเหลือคุณเกี่ยวกับปัญหา WooCommerce หรือแก้ไขข้อผิดพลาดใด ๆ ในไซต์ของคุณ หากคุณต้องการจ้างผู้เชี่ยวชาญ WordPress หรือนักพัฒนา WooCommerce

บทความที่คล้ายกัน