یکی از مشکلاتی که ممکنه حین استفاده از ووکامرس برای فروش محصولات مجازی (فایل، لایسنس و …) داشته باشید اینه که یه سری فیلد بیربط مثل آدرس خونه، کد پستی و … نشون میده که خب تجربه کاربری خوبی رو برای مشتری رقم نمیزنه. سادهترین راهحل اینه که افزونه ووکامرس فارسی رو نصب کنید و گزینه “حذف فیلدهای غیرضروری از محصولات دانلودی ووکامرس” رو تیک بزنید. ولی شاید نخواید یه افزونه مازاد نصب کنید. پس باید سراغ کدها بریم.
function remove_billing_checkout_fields($fields) {
if (! WC()->cart->needs_shipping()) {
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_country']);
unset($fields['billing']['billing_state']);
unset($fields['billing']['billing_phone']);
}
return $fields;
}
add_filter('woocommerce_checkout_fields', 'remove_billing_checkout_fields', 20);
کافیه داخل functions.php پوسته فعلی بذارید. با این کد، فیلدهای غیرضروری آدرس برای محصولات مجازی، دیگه نمایش داده نمیشن.