آیا نیاز دارید تا کاربران هنگام ثبت نام در فروشگاه ووکامرس شما فایلی بارگذاری کنند؟ ما در این مقاله به شما نحوه اضافه کردن بخش آپلود فایل به فرم ثبت نام حساب من ووکامرس را آموزش می دهیم.
پس از پایان این مقاله فرم ثبت نام شما مانند تصویر زیر با بخش اضافی بارگذاری پرونده نمایش داده می شود:
نحوه اضافه کردن بارگذاری فایل به فرم ثبت نام ووکامرس
برای اضافه کردن بخشی برای آپلود فایل در فرم ثبت نام ووکامرس، فقط کافی است تا قطعه کد زیر را به فایل functions.php قالب وردپرس خود اضافه کنید:
توجه: پیشنهاد می کنیم برای اینکه بعد از آپدیت قالب تغییرات شما از بین نرود، از چایلد تم استفاده کنید.
// 1. Add file input to register form add_action( 'woocommerce_register_form', 'bbloomer_add_woo_account_registration_fields' ); function bbloomer_add_woo_account_registration_fields() { ?> <p class="form-row validate-required" id="image" data-priority=""><label for="image" class="">Image (JPG, PNG, PDF)<abbr class="required" title="required">*</abbr></label><span class="woocommerce-input-wrapper"><input type='file' name='image' accept='image/*,.pdf' required></span></p> <?php } // -------------- // 2. Validate new field add_filter( 'woocommerce_registration_errors', 'bbloomer_validate_woo_account_registration_fields', 10, 3 ); function bbloomer_validate_woo_account_registration_fields( $errors, $username, $email ) { if ( isset( $_POST['image'] ) && empty( $_POST['image'] ) ) { $errors->add( 'image_error', __( 'Please provide a valid image', 'woocommerce' ) ); } return $errors; } // -------------- // 3. Save new field add_action( 'user_register', 'bbloomer_save_woo_account_registration_fields', 1 ); function bbloomer_save_woo_account_registration_fields( $customer_id ) { if ( isset( $_FILES['image'] ) ) { require_once( ABSPATH . 'wp-admin/includes/image.php' ); require_once( ABSPATH . 'wp-admin/includes/file.php' ); require_once( ABSPATH . 'wp-admin/includes/media.php' ); $attachment_id = media_handle_upload( 'image', 0 ); if ( is_wp_error( $attachment_id ) ) { update_user_meta( $customer_id, 'image', $_FILES['image'] . ": " . $attachment_id->get_error_message() ); } else { update_user_meta( $customer_id, 'image', $attachment_id ); } } } // -------------- // 4. Add enctype to form to allow image upload add_action( 'woocommerce_register_form_tag', 'bbloomer_enctype_custom_registration_forms' ); function bbloomer_enctype_custom_registration_forms() { echo 'enctype="multipart/form-data"'; }
کد بالا یک بخش آپلود فایل به فرم ثبت نام ووکامرس اضافه می کند که می تواند فایل را از مرورگر کاربر بارگیری کند، آن را به فرم اختصاص دهد و فایل را در نصب وردپرس به بخش “رسانه” اضافه کند.
به پایان این آموزش رسیدیم، امیدواریم که به خوبی نحوه افزودن آپلود فایل به فرم ثبت نام ووکامرس را یاد گرفته باید. همچنین ممکنه است بخواهید برای سفارشی سازی بیشتر فروشگاه خود آموزش های زیر را هم ببینید: