آموزش افزودن فیلد ثبت نام در وووکامرس

شاید براتون پیش اومده که از ثبت نام ووکامرس استفاده کنید! مثلا به کاربرتون بگید که تو سایت ووکامرسی شما ثبت نام کنه تا براش فاکتور ایجاد کنید. در این حالت خواستید چند فیلد ثبت نام در وووکامرس اضافه کنید مثلا نام نام خانوادگی ، و شماره موبایل یوزرتون خوب همانطور که میدونید در ووکامرس در صفحه ثبت نام  فقط فیلد های نام کاربری و ایمیل و پسورد موجود هست مثلا منی که برای کاربری فاکتور ارسال میکنم مجبورم بهش اس ام اس هم ارسال کنم و یا اسمشو بدونم پس لازم هست از افزودن فیلد ثبت نام در وووکامرس استفاده ببرم.
خوب برای استفاده از این روش شما ابتدا باید وارد حساب مدیریتتون در وردپرس بشید. به مراحل زیر دقت کنید.

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

بریم به مراحله بعدی

وارد هاست خودتان بشید و برین به پوشه پلگین ها و پوشه پلاگین ووکامرس را باز کنید و به ادرس زیر روفته

 

wp-content/plugins/woocommerce/includes/

و فایل   wc-core-functions.php  را باز کنید.

 

و این کد هارو در این فایل در آخر بریزید

 

// ========================== larsa.ir ======================================

/**
* Add new register fields for WooCommerce registration.
*
* @return string Register fields HTML.
*/
function wooc_extra_register_fields() {
?>

<p class=”form-row form-row-first”>
<label for=”reg_billing_first_name”><?php _e( ‘First name’, ‘woocommerce’ ); ?> <span class=”required”>*</span></label>
<input type=”text” class=”input-text” name=”billing_first_name” id=”reg_billing_first_name” value=”<?php if ( ! empty( $_POST[‘billing_first_name’] ) ) esc_attr_e( $_POST[‘billing_first_name’] ); ?>” />
</p>

<p class=”form-row form-row-last”>
<label for=”reg_billing_last_name”><?php _e( ‘Last name’, ‘woocommerce’ ); ?> <span class=”required”>*</span></label>
<input type=”text” class=”input-text” name=”billing_last_name” id=”reg_billing_last_name” value=”<?php if ( ! empty( $_POST[‘billing_last_name’] ) ) esc_attr_e( $_POST[‘billing_last_name’] ); ?>” />
</p>

<div class=”clear”></div>

<p class=”form-row form-row-wide”>
<label for=”reg_billing_phone”><?php _e( ‘Phone’, ‘woocommerce’ ); ?> <span class=”required”>*</span></label>
<input type=”text” class=”input-text” name=”billing_phone” id=”reg_billing_phone” value=”<?php if ( ! empty( $_POST[‘billing_phone’] ) ) esc_attr_e( $_POST[‘billing_phone’] ); ?>” />
</p>

<?php
}

add_action( ‘woocommerce_register_form_start’, ‘wooc_extra_register_fields’ );
// =================================== Validateing ====================================

/**
* Validate the extra register fields.
*
* @param string $username Current username.
* @param string $email Current email.
* @param object $validation_errors WP_Error object.
*
* @return void
*/
function wooc_validate_extra_register_fields( $username, $email, $validation_errors ) {
if ( isset( $_POST[‘billing_first_name’] ) && empty( $_POST[‘billing_first_name’] ) ) {
$validation_errors->add( ‘billing_first_name_error’, __( ‘<strong>Error</strong>: First name is required!’, ‘woocommerce’ ) );
}

if ( isset( $_POST[‘billing_last_name’] ) && empty( $_POST[‘billing_last_name’] ) ) {
$validation_errors->add( ‘billing_last_name_error’, __( ‘<strong>Error</strong>: Last name is required!.’, ‘woocommerce’ ) );
}
if ( isset( $_POST[‘billing_phone’] ) && empty( $_POST[‘billing_phone’] ) ) {
$validation_errors->add( ‘billing_phone_error’, __( ‘<strong>Error</strong>: Phone is required!.’, ‘woocommerce’ ) );
}
}

add_action( ‘woocommerce_register_post’, ‘wooc_validate_extra_register_fields’, 10, 3 );

// =========================== Save into Database =====================================
/**
* Save the extra register fields.
*
* @param int $customer_id Current customer ID.
*
* @return void
*/
function wooc_save_extra_register_fields( $customer_id ) {
if ( isset( $_POST[‘billing_first_name’] ) ) {
// WordPress default first name field.
update_user_meta( $customer_id, ‘first_name’, sanitize_text_field( $_POST[‘billing_first_name’] ) );

// WooCommerce billing first name.
update_user_meta( $customer_id, ‘billing_first_name’, sanitize_text_field( $_POST[‘billing_first_name’] ) );
}

if ( isset( $_POST[‘billing_last_name’] ) ) {
// WordPress default last name field.
update_user_meta( $customer_id, ‘last_name’, sanitize_text_field( $_POST[‘billing_last_name’] ) );

// WooCommerce billing last name.
update_user_meta( $customer_id, ‘billing_last_name’, sanitize_text_field( $_POST[‘billing_last_name’] ) );
}

if ( isset( $_POST[‘billing_phone’] ) ) {
// WooCommerce billing phone
update_user_meta( $customer_id, ‘billing_phone’, sanitize_text_field( $_POST[‘billing_phone’] ) );
}
}

add_action( ‘woocommerce_created_customer’, ‘wooc_save_extra_register_fields’ );

 

و تمام حالا فایل مورد نظر را ذخیره کنید.

 

آموزش افزودن فیلد ثبت نام در وووکامرس

 

برای نمونه میتونید به آدرس ووکامرسی ما برای ثبت نام کاربر مراجعه کنید

 

حساب کاربری

و ملاحظه میکنید نام نام خانوادگی و شماره موبایل اضافه شده است

 

آموزش افزودن فیلد ثبت نام در وووکامرس

 

درباره فرشید قنبری

مدیر مسئول تجارت الکترونیک لارسا  برای ارتباط با ما شماره تماس 09337090173 در ارتباط باشید. آی دی یاهو larsa_ir آی دی اسکایپ : larsa.ir شماره تلگرام : 09337090173

1 پاسخ به آموزش افزودن فیلد ثبت نام در وووکامرس
  1. پست عالی بود


[بالا]

ارسال دیدگاه

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