تبلیغات تبلیغات
حراجی دامنه های ویژهمشاهده





تبلیغات
تبلیغات تبلیغات

حل مشکل ثبت مشتری به عنوان مهمان در سفارشات ووکامرس

مقالات,آموزش,ترفند , وردپرس

یکی از مشکلات ووکامرس این است که اگر یک مشتری بدون ورود به سایت شما، از شما خرید کند، سفارش به‌صورت مهمان ثبت خواهد شد. برای حل مشکل ثبت مشتری به عنوان مهمان در سفارشات این مقاله را تا انتها دنبال کنید.

حل مشکل ثبت مشتری به عنوان مهمان در سفارشات ووکامرس

در آموزش‌های قبل، به شما توضیح دادیم که از بخش ووکامرس > پیکربندی، می‌توانید تنظیمات مربوط به فعال‌سازی ثبت‌نام بدون عضویت در ووکامرس را انجام دهید. در واقع کافی است که شما فقط وارد بخش “حفظ حریم خصوصی حساب‌های کاربری” ووکامرس شوید. سپس تیک دو گزینه‌ای که در بخش “پرداخت مهمان” وجود دارد را فعال کنید. سپس آموزش دیگری روی منتشر کردیم. که در آن بتوانید با اضافه کردن چند خط کد به فایل function.php خطای An account is already registered with your email address را در صفحه تسویه حساب رفع کنید.

 

اما مشکل دیگری که کاربران با آن مواجه می‌شوند. این است که وقتی یک مشتری، با ایمیلی که از قبل در سایت ثبت‌نام کرده است و دارای حساب کاربری است. اقدام به خرید می‌کند و تیک گزینه “می‌خواهید یک حساب کاربری ایجاد کنید؟” را فعال می‌کند. به عنوان کاربر مهمان شناخته می‌شود. (با وجود اینکه ایمیل مشتری از قبل در سایت وجود داشته است.) پس باید به صورت دستی مشتری را برای سفارشات مهمان تغییر دهند. در این مقاله نحوه حل این مشکل را توضیح خواهیم داد.

 

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

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

برای این کار کافی است مثل همیشه از منوی نمایش، روی ویرایشگر پوسته کلیک کنید. سپس فایل توابع پوسته (functions.php) را باز کنید و قطعه کد زیر را در انتهای این فایل قرار دهید.


function bistscript_set_customer_email($order,$data){
$email = $data['billing_email'];
if(email_exists($email)){
$user = get_user_by('email',$email);
$order->set_customer_id($user->ID);
}
}
add_action('woocommerce_checkout_create_order','bistscript_set_customer_email',10,2);

در صورتی که شما پس از وارد کردن قطعه کد بالا با خطای Internal Server Error مواجه شدید. کافی است مجددا کدهای وارد شده را مورد بررسی قرار دهید. چرا که این خطا یا خطای Error 500 تنها زمانی به وجود می‌آید که منابع سرور شما کم باشد، یا مشکلی در برنامه‌نویسی سایت شما وجود داشته باشد. با اضافه کردن این چند خط کد بالا هم نمی‌توان گفت که منابع سرور به مشکل خورده باشند. بنابراین با دیدن این خطا شما باید مجددا کدهای نوشته شده مورد بررسی قرار دهید.

 

حالا مشاهده می‌کنید که در صورت ثبت سفارش توسط یک فرد که قبلا در سایت شما ثبت‌نام کرده اما وارد سایت نشده، سفارش با ایمیل مشتری ثبت خواهد شد.

حل مشکل ثبت مشتری به عنوان مهمان در سفارشات ووکامرس

موفق باشید.

دانلود

هاست ارزان، لایت اسپید، سرور مجازی منطبق با اسکریپت های 20script کلیک کنید >
انتقال و خرید دامنه 5000 تومان! | کد تخفیف: limoo-ir-5s ثبت دامنه >
مطلب مفیدی بود ؟
نویسنده : تیم محتوای 20اسکریپت 0 مقالات,آموزش,ترفند , وردپرس
لینک کوتاه مطلب : https://www.20script.ir/?p=55675
مطالب مرتبط
برخی از قالب های وبلاگ - بیست اسکریپت
قالب عشق بین انگشت ها
قالب دخترونه و آرایش
قالب زیبای ماشین
قالب فانتزی و طنز چِشم
قالب دختر رویایی
قالب وبلاگ دکوراسیون
قالب وبلاگ کلبه و درخت
قالب دختر زیبا
قالب پسرونه غمگین
قالب عاشقانه قلب
شرکت سئو سایت
شرکت سئو سایت
تبلیغات
تبلیغات
تبلیغات