حذف فیلدهای اضافی ووکامرس

برای حذف فیلدهای اضافی در WooCommerce، می‌توانید از افزونه‌ها یا اقدامات دستی در قالب وبسایت خود استفاده کنید. در ادامه توضیح می‌دهم که چگونه این کار را انجام دهید: 1. استفاده از افزونه: یکی از راه‌های ساده‌تر و موثرتر برای حذف فیلدهای اضافی در WooCommerce استفاده از افزونه‌ها است. برخی افزونه‌هایی مانند “WooCommerce Customizer”، “WooCommerce […]

برای حذف فیلدهای اضافی در WooCommerce، می‌توانید از افزونه‌ها یا اقدامات دستی در قالب وبسایت خود استفاده کنید. در ادامه توضیح می‌دهم که چگونه این کار را انجام دهید:

1. استفاده از افزونه: یکی از راه‌های ساده‌تر و موثرتر برای حذف فیلدهای اضافی در WooCommerce استفاده از افزونه‌ها است. برخی افزونه‌هایی مانند “WooCommerce Customizer”، “WooCommerce Checkout Manager” و “Advanced Custom Fields” امکان اضافه کردن و حذف فیلدهای دلخواه را فراهم می‌کنند.

2. اقدامات دستی: اگر تمایل دارید فیلدهای اضافی را به صورت دستی حذف کنید، می‌توانید مستقیماً به پوشه قالب وبسایت خود مراجعه کنید و فایل functions.php را ویرایش کنید. برای حذف یک فیلد، کد زیر را به انتهای فایل functions.php اضافه کنید:

				
					add_filter( 'woocommerce_checkout_fields' , 'remove_checkout_fields' );
function remove_checkout_fields( $fields ) {
unset($fields['billing']['billing_field_name']);
return $fields;
}
				
			
در خط چهارم، “billing_field_name” را با نام واقعی فیلدی که می‌خواهید حذف کنید جایگزین کنید. همچنین، برای حذف فیلدهای متداول دیگر مانند آدرس دوم، کدپستی و … می‌توانید همین اقدام را تکرار کنید و نام فیلدهای مورد نظر را در فیلد‌های “billing”, “shipping” و یا “order” قرار دهید. بعد از انجام تغییرات انجام شده در فایل functions.php یا استفاده از افزونه مربوطه، فیلدهای اضافی مورد نظر حذف خواهند شد. پس از اینکه تغییرات اعمال شد، بهتر است یک بار دیگر بررسی کنید و اطمینان حاصل کنید که فیلدها به درستی حذف شده‌اند.
 
این دستورالعمل ها را می توانید در فایل functions.php قالب خود قرار دهید یا از یک افزونه سفارشی که قابلیت قرار دادن کدهای شخصی را دارد استفاده کنید:
 
1. برای حذف فیلد شرکت از فرم آدرس:
				
					
    function remove_billing_company_field( $fields ) {
       unset( $fields['billing']['billing_company'] );
       return $fields;
    }
    add_filter( 'woocommerce_billing_fields', 'remove_billing_company_field' );
   
				
			

2. برای حذف فیلد تلفن فروشگاه از فرم مخاطب:

				
					
    function remove_store_phone_field( $fields ) {
       unset( $fields['store_phone'] );
       return $fields;
    }
    add_filter( 'woocommerce_store_phone_fields', 'remove_store_phone_field' );
   
				
			

3. برای حذف فیلد موبایل از فرم حمل و نقل:

				
					
    function remove_shipping_mobile_field( $fields ) {
       unset( $fields['shipping_phone'] );
       return $fields;
    }
    add_filter( 'woocommerce_shipping_fields', 'remove_shipping_mobile_field' );
   
				
			

4 – و برای حذف کل فیلد ها از کد زیر استفاده کنید.

				
					add_filter('woocommerce_checkout_fields','bebinam_override_checkout_fields');
function bebinam_override_checkout_fields($fields){
    unset($fields['billing']['billing_first_name']);
    unset($fields['billing']['billing_last_name']);
    unset($fields['billing']['billing_company']);
    unset($fields['billing']['billing_country']);
    unset($fields['billing']['billing_address_1']);
    unset($fields['billing']['billing_address_2']);
    unset($fields['billing']['billing_city']);
    unset($fields['billing']['billing_state']);
    unset($fields['billing']['billing_postcode']);
    unset($fields['billing']['billing_phone']);
    unset($fields['billing']['billing_email']);
    unset($fields['order']['order_comments']);
    return $fields;
}
				
			
				
					add_filter('woocommerce_checkout_fields','bebinam_override_checkout_fields');
function bebinam_override_checkout_fields($fields){
    unset($fields['billing']['billing_first_name']);
    unset($fields['billing']['billing_last_name']);
    unset($fields['billing']['billing_company']);
    unset($fields['billing']['billing_country']);
    unset($fields['billing']['billing_address_1']);
    unset($fields['billing']['billing_address_2']);
    unset($fields['billing']['billing_city']);
    unset($fields['billing']['billing_state']);
    unset($fields['billing']['billing_postcode']);
    unset($fields['billing']['billing_phone']);
   // unset($fields['billing']['billing_email حالت غیر فعال شده و در سایت نمایش داده می شود
    unset($fields['order']['order_comments']);
    return $fields;
}
				
			

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *