فرم تسویه حساب چیست؟
فرم تسویه حساب ووکامرس یا صفحه Checkout به صفحهای گفته میشود که در آن فاکتور خرید نهایی به کاربر نمایش داده شده و برای تکمیل سفارش، از کاربر میخواهد تا اطلاعات تماس و آدرس خود را جهت ارسال محصولات وارد نماید.
ازآنجاییکه وبسایتهای وردپرسی غالباً از افزونه ووکامرس برای ایجاد فروشگاه استفاده میکنند. در ووکامرس امکان خرید محصولات فیزیکی (نظیر گوشی موبایل) و دیجیتال (نظیر یک فایل ویدئویی) مقدور است؛ به همین دلیل فرم نهایی ثبت سفارش بهصورت پیشفرض اطلاعاتی نظیر آدرس کامل، کد پستی، نام شرکت و… را نیز علاوه بر اطلاعات ضروری نظیر نام و نام خانوادگی، ایمیل، شماره تماس و… دریافت میکند.
چرا حذف فیلدهای اضافی فرم تسویه حساب ووکامرس لازم است؟
اگر شما در سایت خود محصولات دیجیتال میفروشید نیازی به ارسال پستی محصولات نیست؛ بنابراین چه لزومی دارد که از کاربر آدرس و کد پستی دریافت کنید؟ خریداران ممکن است در صورت مواجه با این فرم از خرید خود منصرف شوند و سراغ فروشنده دیگری بروند.
نکته دیگر بحث ثبتنام یا درج اجباری پست الکترونیکی کاربر است. بهصورت پیشفرض درج پست الکترونیکی در فرم تسویهحساب ضروری است و فاکتور خرید برای مشتری ایمیل میشود. فروشگاهی را در نظر بگیرید که اکثر مشتریانش فاقد پست الکترونیکی هستند. در چنین شرایطی امکان خرید از سایت مقدور نیست و بسیاری از خریدها نصفه و نیمه رها میشوند.
در چنین شرایطی بهتر است فرم تسویهحساب را به سادهترین شکل ممکن طراحی کنید و فیلدهای اضافی را تاحدامکان حذف نمایید تا کاربر در سریعترین زمان ممکن سفارش خود را ثبت نماید.
آموزش پیکربندی و راه اندازی ووکامرس [11 گام ضروری]
دو روش برای ویرایش فرم تسویه حساب
دو روش برای ویرایش فرم تسویهحساب وجود دارد. روش اول با استفاده از درج کد در فایل فانکشن وردپرس است و روش دوم استفاده از افزونههای مرتبط.
اگر صرفاً میخواهید فرم را سادهتر کنید به شما روش اول را پیشنهاد میکنیم تا آیتمهای اضافی را بدون دردسر حذف کنید؛ اما اگر ویرایشهای بیشتری مدنظر شماست و میخواهید عناوین را نیز تغییر داده و فیلدی نیز اضافه کنید بهتر است روش دوم را امتحان کنید.
روش اول: استفاده از کد در فایل فانکشن
در این روش میتوانید فیلدهای اضافی محصولات را به کمک کدهای php در فایل function وردپرس، حذف نمایید. فقط کافی است قطعه کد زیر را در انتهای فایل فانکشن وردپرس قرار دهید.
/* WooCommerce: The Code Below Removes Checkout Fields */
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']);
return $fields;
}
این کد تمامی فیلدهای فرم تسویهحساب، غیر از نام و نام خانوادگی و شماره تماس را حذف میکند. اگر کد بالا را با دقت ملاحظه کنید متوجه میشوید که در کنار کد مربوط به حذف فیلد نام، نام خانوادگی و شماره تماس عبارت // درج شده است. این عبارت باعث میشود دستور غیرفعال شود؛ بنابراین در کد بالا همه فیلدها بهجز نام، نام خانوادگی و شماره تماس از صفحه تسویهحساب حذف میشوند.
راهنمایی ۱: اگر میخواهید فیلد شماره تماس نیز حذف شود کافی است // را از ابتدای کد بردارید.
راهنمایی ۲: اگر میخواهید فیلد ایمیل مجدداً نمایش داده شود کافی است در ابتدای کد مربوطه // درج کنید.
روش دوم: استفاده از افزونه ویرایش فرم تسویه حساب
اگر تغییرات شما گستردهتر هست و در نظر دارید فیلدی هم اضافه کنید قضیه کمی متفاوت خواهد بود و صرفاً کدهای فانکشن بالا جوابگوی کار شما نیست. نیاز است که کدهای حرفهایتری بنویسید.
اگر همچنان مایل به کدنویسی هستید در مقاله How to Add Custom Fields to WooCommerce Checkout Page روش کار توضیح داده است. اما اگر زیاد به سروکله زدن با کدهای php علاقه ندارید میتوانید از افزونهها استفاده کنید. افزونههای زیادی برای این کار وجود دارند که اغلب در دو نسخه رایگان و پولی ارائه میشوند. در نسخه رایگان به شما اجازه حذف، اضافه و ویرایش فیلدها را خواهند داد و در نسخه حرفهای میتوانید فیلدهای حرفهای نظیر آپلود فایل، ایجاد کنید و امکانات بیشتری نظیر ایجاد شرط برای نمایش فیلدها را در اختیار داشته باشید.
برای شروع کار، ما به شما نسخه رایگان افزونه Checkout Fields Manager for WooCommerce را پیشنهاد میکنیم. نسخه رایگان این افزونه اکثر امکانات موردنیاز شما را دارد و بهراحتی میتوانید بخشهای مختلف صفحه تسویهحساب را ویرایش نمایید. در نسخه پریمیوم آپشنهای بیشتری در اختیار دارید و میتوانید نمایش فیلدها را بر اساس قیمت، وضعیت کالا و … داینامیک کنید و قوانین شرطی ایجاد نمایید.
آموزش ساخت کد تخفیف در ووکامرس [ساده + پیشرفته]
ویدئوی آموزشی کار با افزونه شخصی سازی صفحه پرداخت ووکامرس
در این ویدئوی آموزشی کار با افزونه Checkout Fields Manager for WooCommerce جهت ویرایش فرم تسویه حساب را به شما آموزش دادیم. همچنین ایدههایی برای کاهش تعداد فیلدهای غیر ضروری عنوان شده است.
رفع مشکل جابهجایی شهر و استان در فرم پرداخت
در برخی سایتهای وردپرس فیلد استان و شهر جابهجا شده است. در حالت پیشفرض فیلد اول استان است و بعد از آن فیلد شهر قرار دارد اما در برخی سایتها در صفحه پرداخت این جای این دو فیلد عوض شده است. برای رفع این مشکل و ویرایش فرم تسویه حساب میتوانید از همین افزونه Checkout Fields Manager for WooCommerce استفاده کنید و محل آنها را تغییر دهید.
همچنین با فعالسازی افزونه ووکامرس فارسی میتوانید مشکل را حل کنید. برای این کار کافی است وارد بخش “ووکامرس فارسی > ابزارها > تسویهحساب ” شوید و گزینه “جابهجایی استان و شهر” را فعال کنید.
رفع مشکل لیست نشدن شهرها و استانها در صفحه تسویهحساب
در برخی سایتهای وردپرسی پس از آپدیت به نسخه جدید لیست شهرها لود نمیشود. بهصورت پیشفرض پس از انتخاب استان، در بخش شهر، لیست شهرستانهای استان انتخاب شده لود میشد و کاربر میتوانست شهر موردنظر خود را انتخاب کند. اما پس از آپدیت ممکن است این فیلد بهجای لیست بازشو تبدیل به یک فیلد متنی ساده شود.
البته برخی کاربران با این قضیه مشکلی ندارند و کاربر میتواند شهر خود را بنویسد اما برخی مدیران سایتها ترجیح میدهند لیست شهرها لود شود.
برای رفع این مشکل و ویرایش فرم تسویه حساب کافی است افزونه ووکامرس فارسی را نصب کنید. در ادامه وارد بخش “ووکامرس فارسی > ابزارها > تسویهحساب” شوید و گزینه “فعالسازی شهرهای ایران” را فعال کنید. همچنین گزینه ” حل مشکل لیست استانها” نیز میبایست فعال باشد.
حذف فیلدهای مرتبط با آدرس در هنگام خرید محصولات مجازی (دانلودی)
اگر در سایت خود هم محصولات فیزیکی ارائه میکنید هم محصولات مجازی این روش برای شما مناسب است. محصولات مجازی نیاز به ارسال پستی ندارند (مانند خرید کارت شارژ یا ثبتنام در یک دوره آموزشی)؛ بنابراین نیازی نیست که از کاربر آدرس و مشخصات پستی دریافت شود.
با نصب افزونه ووکامرس فارسی میتوانید امکانی را به وجود آورید که اگر در سبد خرید کاربر فقط محصولات دانلود بود فیلدهای مرتبط با آدرس از فرم تسویه حساب حذف شود.
برای این کار و ویرایش فرم تسویه حساب کافی است افزونه ووکامرس فارسی را نصب کنید. در ادامه وارد بخش “ووکامرس فارسی > ابزارها > تسویهحساب” شوید و گزینه ” حذف فیلدهای غیرضروری” را فعال کنید.
برای اینکه محصولات سایت را از حالت فیزیکی به مجازی تغییر دهید کافی است در هنگام ویرایش محصول تیک مجازی بودن را بزنید و این گزینه را فعال کنید.
حذف تیک قوانین و مقررات در برگه تسویه حساب
در صفحه تسویه حساب پیشفرض در انتهای فرم، گزینهای مبنی بر تایید قوانین و مقررات سایت وجود دارد که اغلب توسط کاربران نادیده گرفته میشود.
برای حذف این گزینه و ویرایش فرم تسویه حساب میبایست وارد بخش “ووکامرس > پیکره بندی > پیشرفته” شوید و در همان تب “راهاندازی برگه” فیلد “شرایط و ضوابط” را خالی کنید (اگر برگهای مشخص شده بود آن را بردارید)
اگر هم تصمیم دارید برای این بخش قوانین درستوحسابی! بنویسید بهتر نیاز است ابتدا یک برگه برای این موضوع بسازید و در فیلد “شرایط و ضوابط” برگه موردنظر خود را انتخاب نمایید.
اگر در نوشتن متن قوانین سایت با مشکل مواجه شدید میتوانید به سایتهای بزرگ حوزه کاری خود مراجعه نمایید (بهعنوانمثال دیجیکالا برای سایتهای فروشگاهی مرجع مناسبی است) و از صفحه قوانین و مقررات آنها الگوبرداری کنید.
دقت کنید که هدف فقط کسب ایده و الگوبرداری است. کل متن را کپی نکنید! در متون مرتبط با قوانین، اسم برند و مشخصات تماس فروشگاه ذکر میشود که باید آنها را بر روی وبسایت خود اصلاح کنید.
دقت کنید که هدف فقط کسب ایده و الگوبرداری است. کل متن را کپی نکنید! در متون مرتبط با قوانین، اسم برند و مشخصات تماس فروشگاه ذکر میشود که باید آنها را بر روی وبسایت خود اصلاح کنید.
غیرفعالکردن اجبار به ثبتنام در هنگام تکمیل سفارش
در صفحه پرداخت نهایی ووکامرس از خریدار خواسته میشود که در سایت ثبتنام کند یا اگر حساب کاربری دارد به حساب خود وارد شود.
عموماً ساخت حساب کاربری برای پیگیری خرید موردنیاز است ولی در برخی از سایتهای فروشگاهی نیاز مبرمی به ثبتنام نیست و میتوان آن را از حالت اجباری خارج کرد. برای این کار و ویرایش فرم تسویه حساب کافی است وارد بخش “ووکامرس > پیکربندی > حفظ حریم خصوصی حسابهای کاربری” شوید. در دو بخش “پرداخت مهمان” و “ساخت حساب کاربری” میتوانید شرایط و سناریوهای مختلفی را پیادهسازی نمایید.
حذف عبارت “اختیاری” از فیلدهای فرم تسویه حساب
در عنوان فیلدهایی که پر کردن آنها اجباری نیست عبارت (اختباری) در می شود. در صورتی که مایل هستید این عبارت نمایش داده نشود می توانید کد CSS زیر را در وب سایت خود قرار دهید.
.checkout .optional {
display: none;
}
3 پاسخ
سلام وقت بخیر. دوست عزیز به چه صورت میتونیم آیتم جمع جزء: رو از صورتحساب برداریم . قبلا یه کلاس میتونستیم بدیم به فرزند و چایلد های css . ولی هر کاری میکنم این قسمت برداشته نمیشه
درود بر شما. باید کلاس این بخش رو پیدا کنید. در هر قالب ممکنه متفاوت باشه. ادرس سایتتون رو قرار بدید بررسی میکنم.
بسیار بسیار مفید بود
ممنون