نحوه اضافه کردن صفحه بررسی شماره مالیات بر ارزش افزوده ووکامرس

آیا می خواهید فیلد شماره VAT را در صفحه پرداخت ووکامرس  اضافه کنید؟ ووکامرس  دارای قابلیت داخلی برای افزودن فیلد شماره مالیات بر ارزش افزوده نیست. با این حال ، من یک اسکریپت PHP سفارشی ایجاد کرده ام که یک قسمت مالیات بر ارزش افزوده را در صفحه پرداخت و صفحه حساب من اضافه می کند.

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

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

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

مراحل افزودن قسمت مالیات بر ارزش افزوده در صفحه پرداخت

در اینجا مراحلی وجود دارد که باید دنبال کنید:

  • وارد سایت وردپرس خود شوید و به عنوان کاربر مدیر به داشبورد دسترسی پیدا کنید.
  • از منوی داشبورد ، روی منوی ظاهر> منوی ویرایشگر تم کلیک کنید. وقتی صفحه ویرایشگر تم باز شد ، به دنبال فایل توابع موضوع با پسوند functions.php بگردید. این فایل توابع را برای افزودن تابع برای افزودن فیلد مالیات بر ارزش افزوده در صفحه پرداخت باز کنید.
  • کد زیر را به فایل functions.php اضافه کنید:
/*****************************  FRONTEND  ****************************************/

/**************************

Filter to add a VAT field to:
- My Account - Edit Form -- Billing fields
- Checkout - Edit Form - Billing Fields
This function is also reordering the form fields.
***************************/

function add_woocommerce_billing_fields($billing_fields){

            //reorder woo my billing address form fields
            $billing_fields2['billing_first_name'] = $billing_fields['billing_first_name'];
            $billing_fields2['billing_last_name'] = $billing_fields['billing_last_name'];

            $billing_fields2['billing_vat'] = array(
                        'type' => 'text',
                        'label' =>  __('VAT number',  'keyelp-shop-customization' ),
                        'class' => array('form-row-wide'),
                        'required' => false,
                        'clear' => true
            );
                
            $merged_billing_fields =  $billing_fields2 + $billing_fields;


            return $merged_billing_fields;

}

add_filter('woocommerce_billing_fields' , 'add_woocommerce_billing_fields');


/*********
Filters to add VAT when printing billing address on:
- (1) My account 
- (2) Checkout - Order Received (after checkout completion),
+++ Additional filters to format the printed output.
********/

// (1) چاپ آدرس صورتحساب در حساب من

add_filter( 'woocommerce_my_account_my_address_formatted_address', 'sevencloner_my_account_my_address_formatted_address', 10, 3 );

function sevencloner_my_account_my_address_formatted_address( $fields, $customer_id, $type ) {

            if ( $type == 'billing' ) {
                        $fields['vat'] = get_user_meta( $customer_id, 'billing_vat', true );
            }
            return $fields;
}


// (2) تسویه حساب - سفارش دریافت شد (چاپ شده پس از اتمام پرداخت)

add_filter( 'woocommerce_order_formatted_billing_address', 'sevencloner_add_vat_formatted_billing_address', 10, 2 );

function sevencloner_add_vat_formatted_billing_address( $fields, $order ) {

            $fields['vat'] = $order->billing_vat;

            return $fields;

}



// ایجاد متغیرهای مالیات بر ارزش افزوده ادغام برای قالب بندی چاپ

add_filter( 'woocommerce_formatted_address_replacements', 'sevencloner_formatted_address_replacements', 10, 2 );

function sevencloner_formatted_address_replacements( $address, $args ) {

            $address['{vat}'] = '';
            $address['{vat_upper}']= '';

            if ( ! empty( $args['vat'] ) ) {
                        $address['{vat}'] = $args['vat'];
                        $address['{vat_upper}'] = strtoupper($args['vat']);
            }

            return $address;

}


//تعریف قالب بندی اسپانیایی برای چاپ آدرس ، از جمله مالیات بر ارزش افزوده.

add_filter( 'woocommerce_localisation_address_formats', 'sevencloner_localisation_address_format' );

function sevencloner_localisation_address_format( $formats ) {

            $formats['ES'] = "{name}n{company}n{vat_upper}n{address_1}n{address_2}n{postcode} {city}n{state}n{country}";

            return $formats;

}


/*****************************  ADMIN USER PROFILE PAGE  ****************************************/

/***************

Filter to add VAT Customer meta fields (user profile field on the billing address grouping)

*****************/

add_filter( 'woocommerce_customer_meta_fields', 'sevencloner_customer_meta_fields' );

functionsevencloner_customer_meta_fields( $fields ) {

            $fields['billing']['fields']['billing_vat'] = array(

                        'label'       => __( 'VAT number', 'sevencloner' )

            );


            return $fields;

}


/***************************  ADMIN ORDER PAGE  ****************************************/


/********* 

Filter to add VAT to the Edit Form on Order --  Admin page

*********/

add_filter( 'woocommerce_admin_billing_fields', 'sevencloner_admin_billing_fields' );

function sevencloner_admin_billing_fields( $fields ) {

            $fields['vat'] = array(
                        'label' => __( 'VAT number', 'njengah' ),
                        'show'  => true
            );

            return $fields;

}

/****************

Filter to copy the VAT field from User meta fields to the Order Admin form (after clicking the dedicated button on the admin page)

******************/


add_filter( 'woocommerce_found_customer_details', 'njengah_found_customer_details' );

function sevencloner_found_customer_details( $customer_data ) {

            $customer_data['billing_vat'] = get_user_meta( $_POST['user_id'], 'billing_vat', true );

            return $customer_data;

}
  • این نتیجه در قسمت جلو است:

  • این نتیجه از طرف مدیر است:

نتیجه

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

دیدگاه‌ها و پرسش‌ها

برای ارسال نظر نیاز است تا ابتدا وارد سایت شوید.

هیچ نظری ارسال نشده است.

در این مقاله قصد داریم تا درباره نحوه اضافه کردن صفحه بررسی شماره مالیات بر ارزش افزوده ووکامرس صحبت کنیم.


قیمت آموزش
رایگان
نوع دسترسی
رایگان

این مقاله در حال حاضر تنها به روش رایگان در دسترس می باشد.

ناصر خالدی
مدرس دوره

ناصر خالدی

مهندس شبکه, امنیت, برنامه نویسی تلفن های هوشمند, طراح وب سایت و متخصص هوش مصنوعی

گفتگوی برنامه نویسان

بخشی برای حل مشکلات برنامه‌نویسی و مباحث پیرامون آن

دوره های پیشنهادی

مقالات پیشنهادی

هک و امنیت

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


۹۶۰
۰
۱۳ آذر ۱۳۹۹

پی اچ پی - PHP

با استفاده از این زبان می توان وب سایت های پویا طراحی کرد, این زبان می تواند با HTML ادغام شود, در حقیقت یک زبان اسکریپتی متن باز و رایگان است. یعنی زمانی که سرور درخواست ...


۹۴۸
۰
۱۳ آذر ۱۳۹۹

جاوا اسکریپت

جاوا اسکریپت یک زبان پویا و محبوب مبتنی بر شیء, داینامیک و مفسری می باشد. این زبان برای برنامه نویسی سمت سرور و کلاینت استفاده میشود که ...


۸۶۹
۰
۱۳ آذر ۱۳۹۹

هوش مصنوعی

هوش مصنوعی یا هوش ماشینی, به هوشمندی نشان داده شده توسط ماشین در شرایط مختلف گفته میشود که مقابل هوش طبیعی در انسان ها قرار دارد که ...


۸۶۴
۰
۱۱ آذر ۱۳۹۹