خطای An account is already registered with your email address در ووکامرس

3.4 / 5. تعداد رای: 13

خطای An account is already registered with your email address در ووکامرس

دلیل خطای شما قبلا ثبت‌نام کرده‌اید

اگر مشتری با یک ایمیل، که قبلا در سایت حساب کاربری ساخته است. وارد سایت شود و بخواهد خرید انجام دهد. با خطای An account is already registered with your email address مواجه می‌شود. این خطا زمانی به مشتری نمایش داده می‌شود که از قبل در سایت شما یک حساب کاربری ایجاد کرده باشد و هنگام خرید تیک گزینه “می‌خواهید یک حساب کاربری ایجاد کنید؟” را فعال کرده باشد.

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

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

رفع خطای An account is already registered with your email address

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

خطای An account is already registered with your email address
خطای An account is already registered with your email address

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

function mihanwp_remove_register_alert($data){
    $email = $data['billing_email'];
    if( email_exists($email)){
        $data['createaccount'] = 0;
    }
    return $data;
}
add_action('woocommerce_checkout_posted_data','mihanwp_remove_register_alert');

توضیحی درباره این قطعه کد

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

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

نکته خاصی هست که این مقاله رو تکمیل‌تر کنه؟