اگر با افزونه فروشگاهی EDD کار کرده باشید فرآیند خرید در ان ساده بوده و مشتری تنها کافی است تا ایمیل و نام خود را در آن وارد کرده و با ورود به سایت اقدام به خرید کند، و در صورتی که دارای حساب کاربری نیست می‌تواند با ثبت ایمیل و نام خود به صورت خودکار عضو سایت شود.

در این آموزش از دکتر وردپرس قصد دارم تا قطعه کدی را به شما معرفی کنم که با استفاده از ان قادر خواهید بود تا فرآیند خرید در ووکامرس را نیز به سادگی Edd تبدیل کنید و از فیلدهای غیرضروری همچون شهر و.. که برای فروش محصولات مجازی نیازی به آنها نیست را از ان حذف کنید.

کاهش مراحل فرآیند خرید در ووکامرس

WooCommerce checkout form doctorwp

برای شروع کار ابتدا به مسیر ووکامرس> پیکربندی> محصولات> محصولات دانلودی مراجعه کرده و تیک گزینه‌ی دانلودها نیازمند ورود هستند را برداشته و تیک گزینه دسترسی به محصولات دانلود شدنی بعد از پرداخت را فعال کنید.

سپس به ویرایشگر قالب خود مراجعه کرده و کدهای زیر را در مکان مناسبی از فایل فانکشن (functions.php) قالب خود قرار دهید.

add_filter( 'woocommerce_checkout_fields' , 'WooCommerce_EDD_Checkout' );
function WooCommerce_EDD_Checkout( $fields ) {
global $woocommerce;
$hasPhysicalProduct = false;
if ( ! empty( $woocommerce->cart->cart_contents ) ) {
$cart = $woocommerce->cart->get_cart();
foreach ( $cart as $key => $values ) {
$_product = get_product( $values['variation_id'] ? $values['variation_id'] : $values['product_id'] );
if ( ! empty( $_product ) && $_product->exists() && $values['quantity'] > 0 ) {
if ($_product->virtual == 'no' && $_product->downloadable == 'no') {<span style="display: inline-block; width: 0px; overflow: hidden; line-height: 0;" data-mce-type="bookmark" class="mce_SELRES_start"></span>
$hasPhysicalProduct = true;
break;
}
}
}
}
if ($hasPhysicalProduct == false) {
//unset($fields['billing']['billing_last_name']);
//unset($fields['billing']['billing_phone']);
unset($fields['billing']['billing_address_1']);
unset($fields['billing']['billing_address_2']);
unset($fields['billing']['billing_company']);
unset($fields['billing']['billing_city']);
unset($fields['billing']['billing_postcode']);
unset($fields['billing']['billing_country']);
unset($fields['billing']['billing_state']);
}
return $fields;
}

حال اگر اقدام به خرید محصول در فروشگاه ووکامرسی خود کنید خواهید دید که فیلدهایی همچون شهر، آدرس، شماره موبایل و.. از آن حذف شده است. دقت کنید در صورتی که می‌خواهید تا گزینه شماره موبایل را هم از این لیست حذف کنید می‌توانید دو کاراکتر // را از خط billing_phone بردارید تا در فرم نمایش داده نشود.

پیشنهاد بعدی  اطلاع از موجودی محصولات ووکامرس با WooCommerce Waitlist
امتیاز شما از 1 تا 5
1 ستاره میدم به نوشته2 ستاره میدم به نوشته3 ستاره میدم به نوشته4 ستاره میدم به نوشته5 ستاره میدم به نوشته 3 رای
Loading...