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

ویرایش صفحه پرداخت ووکامرس

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

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

بخاطر همین تصمیم گرفتن یک آموزش کوتاه در این باره براتون آماده کنم.

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

ما برای ایجاد کردن این تغییرات که معمولا با فانکشن های وردپرسی انجام میشه فقط باید درون فایل functions.php این تغییرات ایجاد کنیم که این فایل معمول توی پوشه اصلی قالبتون هست

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

add_filter('woocommerce_checkout_fields', 'custom_woocommerce_billing_fields');

function custom_woocommerce_billing_fields($fields)
{
    $fields['billing']['billing_options'] = array(
        'label' => __('name', 'woocommerce'), // نام فیلد مورد نظر
        'placeholder' => _x('Your placeholder here....', 'placeholder', 'woocommerce'), // یک متن نگه دارنده
        'required' => false, // اگر میخواهید پر کردن فیلد الزامی باشه true بزارید
        'clear' => false, // 
        'type' => 'text', // اگه میخواید نوشته باشه text بزارید
        'class' => array('my-css')   // یک کلاس css باید بزارید
    );

    return $fields;
}

اگر بخواید فیلد دیگری هم اضافه کنید میتونید عینا محتوای $fileds کپی کنید فقط باید به جای billing_options نام دیگری انتخاب کنید و بنابر محتوی مورد نظر ویژگیشو تغییر بدهید

مشاهده
افزایش سرعت پیشخوان وردپرس

حذف کردن فیلد های غیر ضروری در فرم پرداخت

برای حذف کردن هر فیلدی از صفحه پرداخت هم مثل زیر عمل میکنیم

add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
unset($fields['billing']['billing_first_name']);//فیلد نام
unset($fields['billing']['billing_last_name']);//  فیلد نام خانوادگی
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']);// فیلد تلفن
unset($fields['order']['order_comments']);// فیلد توضیح 
unset($fields['billing']['billing_email']);//فیلد ایمیل
unset($fields['account']['account_username']);//فیلد نام کابری
unset($fields['account']['account_password']);// فیلد کلمه عبور
unset($fields['account']['account_password-2']);// فیلد کلمه عبور ۲
return $fields;
}

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

امیدوارم این آموزش مفید بوده باشه

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

0 0 امتیاز
امتیاز مقاله
guest
0 نظرات
Inline Feedbacks
View all comments