مشکل ثبت مشتری به عنوان مهمان در سفارشات ووکامرس با ۵ خط کد
- مقالات آموزشی
- بروزرسانی شده در

یه سناریو رو تصور کنید: مشتریای که شش ماه پیش تو سایتتون ثبتنام کرده، امروز برمیگرده، محصول رو میذاره تو سبد خرید، میره صفحه تسویه حساب، همون ایمیل همیشگیش رو وارد میکنه و پرداخت میکنه. همهچی هم درست پیش میره. ولی وقتی میرید تو پیشخوان و لیست سفارشها رو نگاه میکنید، جلوی اسم سفارش نوشته «مهمان».

بعدش هم مشتری بهتون پیام میده که «من وارد حسابم شدم ولی سفارشم رو نمیبینم!» و شما باید دستی برید سفارش رو به حسابش وصل کنید. اگه روزی ده تا سفارش داشته باشید، خب حسابش رو بکنید.
خبر خوب اینه که این مشکل با چند خط کد ساده حل میشه. بیاید با هم بریم سراغش.
آنچه در این مقاله میخوانید
ثبت مشتری به عنوان مهمان در سفارشات ووکامرس
ووکامرس هر سفارش رو با یه فیلد به اسم customer_id ذخیره میکنه. این فیلد در واقع همون شناسه کاربری (User ID) اون شخص تو وردپرسه.
حالا اگه کسی موقع خرید لاگین کرده باشه، ووکامرس آیدیش رو برمیداره و میچسبونه به سفارش. ولی اگه لاگین نکرده باشه، این فیلد صفر ثبت میشه. صفر یعنی «مهمان». یعنی این سفارش به هیچ حساب کاربریای وصل نیست.
نکته مهم اینجاست: ووکامرس ایمیل رو چک نمیکنه. براش مهم نیست که این ایمیل قبلاً تو دیتابیس بوده یا نه. فقط نگاه میکنه ببینه طرف موقع خرید لاگین بوده یا نه. همین. اطلاعات صورتحساب (اسم، ایمیل، آدرس) ذخیره میشه، ولی اتصال به حساب کاربری برقرار نمیشه.
برای همینه که مشتری بعداً وارد پنلش میشه و بخش «سفارشها» خالیه.
چرا سفارش کاربران عضو، مهمان ثبت میشود؟
اینجا معمولاً دو تا عامل دست به دست هم میدن: یکی تنظیماتی که خودتون تو ووکامرس فعال کردید، یکی هم رفتار پیشفرض ووکامرس موقع تسویه حساب. جدا از هم هیچکدوم مشکلی درست نمیکنن، ولی وقتی کنار هم قرار میگیرن، نتیجهاش میشه همون سفارشهای مهمانی که تو پیشخوان میبینید. بذارید هر کدوم رو جدا بررسی کنیم.
تنظیمات پرداخت مهمان

اول از همه بریم سراغ چیزی که خودتون احتمالاً فعالش کردید. تو مسیر ووکامرس > پیکربندی > حسابهای کاربری و حریم خصوصی، یه بخش هست به اسم «پرداخت مهمان» که دو تا گزینه داره:
- اجازه دادن به سفارشهای بدون حساب کاربری
- اجازه دادن به مشتریها برای ورود به حساب هنگام تسویه حساب
خیلی از ما این گزینهها رو فعال میکنیم که مسیر خرید کوتاهتر بشه و نرخ رها شدن سبد خرید بیاد پایین. که کار درستیه. ولی همین تصمیم درست، عوارض جانبی داره.
خرید با ایمیلی که از قبل تو سایت ثبت شده
این اصل ماجراست. مشتری عضو دارید، ولی لاگین نکرده. شاید کوکیهاش پاک شده، شاید با گوشی اومده، شاید اصلاً یادش نیست که قبلاً حساب داشته.
میره تسویه حساب، ایمیلش رو میزنه، تیک «میخوام یه حساب کاربری بسازم» رو هم شاید بزنه، و سفارش ثبت میشه. ووکامرس هم چون طرف لاگین نبوده، سفارش رو مهمان ثبت میکنه.
نتیجه؟ یه حساب کاربری دارید با ایمیل X، و یه سفارش مهمان دارید با همون ایمیل X، ولی این دوتا هیچ ربطی به هم ندارن.
ارتباط با خطای An account is already registered with your email address
قبلاً تو مقاله رفع خطای An account is already registered with your email address در ووکامرس توضیح دادیم که با چند خط کد چطور میشه این خطا رو برداشت تا مشتری بتونه بدون لاگین خریدش رو تموم کنه. ولی حواستون باشه اون کد فقط جلوی نمایش خطا رو میگیره؛ سفارش همچنان مهمان ثبت میشه. یعنی اون مقاله «اجازه خرید» رو حل میکنه و این مقاله «وصل شدن سفارش به حساب کاربری» رو. برای اینکه مشکل کامل حل بشه، به هر دوتاش نیاز دارید.
مشکلاتی که درست میشه؟
شاید بگید خب چه اشکالی داره؟ سفارش که ثبت شده، پول هم که رسیده. ولی وقتی چند ماه بگذره میفهمید که:
مشتری سفارشش رو نمیبینه. وارد پنل میشه، بخش سفارشها خالیه. برای محصولات دانلودی این فاجعهست، چون لینک دانلودش هم در دسترس نیست.
تیکت پشتیبانی زیاد میشه. هر مشتری که سفارشش گم بشه، یه پیام میده. اینا وقتتون رو میگیره.
کار دستی زیاد میشه. باید هر سفارش رو باز کنید، برید تو بخش اطلاعات صورتحساب، مشتری رو دستی انتخاب کنید و ذخیره کنید. برای ده تا سفارش قابل تحمله، برای صد تا نه.
گزارشهاتون دقیق نیست. ووکامرس نمیفهمه این آدم مشتری تکراریه. پس آمار «مشتریهای بازگشتی» و ارزش طول عمر مشتری (LTV) اشتباه محاسبه میشه.
سیستم امتیاز و باشگاه مشتریان از کار میافته. اگه افزونه امتیازدهی یا کد تخفیف پلکانی دارید، به سفارشهای مهمان امتیاز تعلق نمیگیره.
حل مشکل ثبت مشتری به صورت مهمان در سفارشات
خب بریم سراغ اصل کار. راهحل سادهست: به ووکامرس میگیم موقع ساخته شدن سفارش، ایمیل وارد شده رو چک کن؛ اگه این ایمیل تو سایت حساب داره، سفارش رو به همون حساب وصل کن.
پیشنیاز این کار
سه تا نکته که خواهش میکنیم جدی بگیرید:
۱. بکاپ بگیرید. از دیتابیس و فایلها. یه بار که با ویرایشگر پوسته سایتتون سفید بشه، میفهمید چرا اینقدر تاکید میکنیم.
۲. از پوسته فرزند استفاده کنید. اگه کد رو مستقیم تو functions.php پوسته اصلی بذارید، با اولین آپدیت پوسته کدتون میپره.
۳. راه بهترش افزونه Code Snippets هست. اگه با پوسته فرزند راحت نیستید، این افزونه رو نصب کنید. کد رو توش میذارید، خیالتون هم راحته که با آپدیت پوسته چیزی از دست نمیره. ضمناً اگه کد ایراد داشته باشه، خودش قبل از فعالسازی هشدار میده و سایت رو نمیخوابونه.

مسیر دسترسی به functions.php
از پیشخوان وردپرس برید به نمایش > ویرایشگر فایل پوسته. از ستون سمت راست (یا چپ، بسته به زبان پیشخوانتون)، فایل توابع پوسته (functions.php) رو انتخاب کنید.
اگه از افزونه Code Snippets استفاده میکنید، برید به Snippets > Add New و کد رو اونجا بذارید.
قطعه کد اصلی
این کد رو انتهای فایل functions.php اضافه کنید:
php
function mihanwp_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', 'mihanwp_set_customer_email', 10, 2 );همین. پنج خط کد. حالا بذارید ببینیم دقیقاً چی کار میکنه.
توضیح خط به خط کد
هوک woocommerce_checkout_create_order
این هوک درست تو لحظهایه که ووکامرس داره شیء سفارش رو میسازه ولی هنوز تو دیتابیس ذخیرهاش نکرده. یعنی بهترین نقطه برای دخالت. اگه بعد از ذخیره شدن دست به سفارش میزدیم، باید یه بار دیگه سفارش رو آپدیت میکردیم که هم کندتره هم ممکنه ایمیلهای ووکامرس با اطلاعات اشتباه ارسال بشن.
اون عدد ۱۰ اولویت اجراست و ۲ یعنی این تابع دو تا ورودی میگیره: $order (خود سفارش) و $data (اطلاعاتی که مشتری تو فرم تسویه حساب پر کرده).
$data['billing_email']
ایمیلی که مشتری تو فیلد صورتحساب وارد کرده رو برمیداریم.
email_exists( $email )
این یه تابع بومی وردپرسه، نه ووکامرس. میره تو جدول کاربرا میگرده ببینه کسی با این ایمیل ثبتنام کرده یا نه. اگه پیدا کنه آیدی کاربر رو برمیگردونه، اگه نه false.
پس این شرط یعنی: «اگه این ایمیل صاحب داره…»
get_user_by( 'email', $email )
حالا که مطمئن شدیم صاحب داره، کل اطلاعات اون کاربر رو میگیریم تا به IDش دسترسی داشته باشیم.
$order->set_customer_id( $user->ID )
و اینجا کار اصلی انجام میشه. همون فیلد customer_id که اول مقاله گفتیم، به جای صفر، آیدی کاربر واقعی رو میگیره.
از این لحظه به بعد ووکامرس این سفارش رو مال اون کاربر میدونه. تو پنل کاربری نمایش داده میشه، تو گزارشها حساب میشه، و همهچی سر جاشه.

آزمایش درست کار کردن کد
کد رو که گذاشتید، حتماً تست کنید. اینجوری:
۱. یه حساب کاربری آزمایشی بسازید (مثلاً با ایمیل test@yoursite.com)
۲. از سایت خارج بشید یا از حالت ناشناس مرورگر استفاده کنید
۳. یه محصول ارزون بذارید تو سبد و برید تسویه حساب
۴. همون ایمیل test@yoursite.com رو وارد کنید و سفارش رو ثبت کنید
۵. برید به ووکامرس > سفارشها
اگه همهچی درست باشه، ستون مشتری به جای «مهمان»، اسم و ایمیل اون کاربر آزمایشی رو نشون میده.
برای اطمینان بیشتر، با همون حساب آزمایشی وارد سایت بشید و برید به حساب کاربری من > سفارشها. سفارش باید اونجا باشه.
احتمال خطای Internal Server Error یا Error 500
اگه بعد از ذخیره کردن فایل، سایت سفید شد یا خطای ۵۰۰ دادید، نگران نشید. تو ۹۹ درصد مواقع مشکل از یه پرانتز یا سمیکالن جا افتادهست.
اول از همه کد رو دوباره نگاه کنید. مطمئن بشید که:
- تعداد
{و}برابره - بعد از هر دستور
;گذاشتید - کد رو بعد از آخرین
}فایل چسبوندید، نه وسط یه تابع دیگه - تگ
<?phpرو تصادفی دوباره تایپ نکردید
نکته مهم: خطای ۵۰۰ معمولاً یا به خاطر کمبود منابع سروره یا مشکل کدنویسی. با پنج خط کد، منابع سرور بعیده به مشکل بخوره. پس تقریباً مطمئن باشید که ایراد از کده.
سایت سفید شده و به پیشخوان دسترسی نداریم!
این حالت که ویرایشگر پوسته هم دیگه در دسترس نیست، کلاسیکه. راهحل:
از طریق FTP یا فایل منیجر هاست وارد بشید. برید به مسیر:
/wp-content/themes/نام-پوسته/functions.phpفایل رو دانلود کنید، کدی که اضافه کردید رو حذف کنید، دوباره آپلود کنید. سایت برمیگرده.
اگه اصلاً به فایلها دسترسی ندارید، از سیپنل یا دایرکتادمین هاستتون بخش File Manager رو باز کنید؛ همون کار رو میشه از اونجا هم انجام داد.
نصیحت دوستانه: به همین دلیله که میگیم افزونه Code Snippets بهتره. اون افزونه قبل از فعال کردن کد، ازش تست میگیره و اگه خطا داشته باشه فعالش نمیکنه. سایتتون هم سالم میمونه.
چند تا نکته تکمیلی
خب حتما نیازه که این اطلاعات رو هم داشته باشید!
این کد سفارشهای قبلی رو درست نمیکند
حواستون باشه که این کد فقط روی سفارشهای جدید اثر داره. اون صد تا سفارش مهمانی که تو دیتابیس دارید، همچنان مهمان میمونن.
برای اونها یا باید دستی اقدام کنید، یا از افزونههایی مثل WooCommerce Assign Past Orders استفاده کنید که سفارشهای قدیمی رو بر اساس ایمیل به حسابها وصل میکنن.
یه نکته درباره امنیت
بعضیها میپرسن «این کد امنه؟ یعنی یکی میتونه با زدن ایمیل من، سفارشای منو ببینه؟»
جواب: نه. این کد فقط سفارش رو به حساب کاربری وصل میکنه. برای دیدن سفارشها، طرف باید با رمز عبور وارد حساب بشه. کسی که ایمیل شما رو بزنه، فقط باعث میشه سفارشِ خودش بیفته تو پنل شما.
با این حال اگه سایتتون حساسه (مثلاً محصولات دانلودی گرون دارید)، بد نیست الزام لاگین برای خرید رو در نظر بگیرید.
ترکیب با ساخت خودکار حساب
اگه میخواید کاربرای واقعاً جدید هم خودکار حساب بگیرن، تو همون بخش تنظیمات حسابهای کاربری، گزینه «ساخت خودکار حساب کاربری هنگام تسویه حساب» رو فعال کنید. اونوقت این کد و اون تنظیم با هم کامل میشن: کاربر قدیمی به حسابش وصل میشه، کاربر جدید حساب میگیره، و دیگه سفارش مهمان ندارید.
سوالات متداول
این کد روی سفارشهای ثبتشده قبلی هم اثر داره؟
نه. فقط از لحظهای که کد رو اضافه میکنید به بعد، سفارشهای جدید به حسابهای کاربری وصل میشن. برای سفارشهای قدیمی باید یا دستی اقدام کنید یا از افزونه مخصوص استفاده کنید.
با آپدیت ووکامرس کد از بین میره؟
نه. کد تو فایل پوسته یا افزونه Code Snippets ذخیره میشه، نه تو فایلهای ووکامرس. با آپدیت پوسته ممکنه بپره (اگه پوسته فرزند نداشته باشید)، ولی آپدیت ووکامرس کاری باهاش نداره. هوک woocommerce_checkout_create_order هم سالهاست پایداره و بعید میدونیم حذف بشه.
امنیت سایت با این کد به خطر میافته؟
نه. کد فقط یه شناسه کاربری رو به سفارش میچسبونه و هیچ اطلاعات حساسی رو در معرض دید قرار نمیده. دسترسی به سفارشها همچنان نیازمند ورود با رمز عبوره.
اگه از بلاک چکاوت جدید ووکامرس استفاده کنیم چی؟
هوک woocommerce_checkout_create_order تو نسخههای جدید هم اجرا میشه، ولی اگه از بلاک چکاوت (Checkout Block) استفاده میکنید حتماً تست کنید. بعضی هوکهای قدیمی تو حالت بلاک رفتار متفاوتی دارن.
اگه چند تا کاربر با یه ایمیل داشته باشیم چی؟
وردپرس اجازه نمیده دو تا کاربر ایمیل یکسان داشته باشن، پس این حالت اصلاً پیش نمیاد.
جمعبندی
مشکل مهمان ثبت شدن سفارشها یکی از اون ایرادهای ریزیه که تا وقتی سایتتون کوچیکه به چشم نمیاد، ولی هرچی فروشتون بیشتر میشه بیشتر اذیتتون میکنه. با پنج خط کدی که بالا گذاشتیم، ووکامرس یاد میگیره که قبل از مهمان زدن یه سفارش، اول ایمیل رو با لیست کاربرا چک کنه. نتیجهاش هم مشتری راضیتره، هم گزارشهای دقیقتر، هم کار دستی کمتر برای شما.
فقط یادتون باشه بکاپ بگیرید و ترجیحاً از افزونه Code Snippets یا پوسته فرزند استفاده کنید. اگه سوالی داشتید یا جایی گیر کردید، تو کامنتها بپرسید. اگه هم روش بهتری سراغ دارید، خوشحال میشیم بشنویم. موفق باشید. 🙂

سلام وقت بخیر
زمانی که کاربر بصورت مهمان خریدی رو انجام می ده و بعد از خرید در سایت ثبت نام می کنه با همون ایمیلی که خرید مهمان رو انجام داده در حساب کاربری ایجاد شده ، خرید یا دانلود های قبلی وجود نداره یعنی در واقع ووکامرس بر اساس اون ایمیل ادرس سابقه خرید ها رو اضافه نمی کنه
آیا راه حلی برای این موضوع هست ؟
ممنون از راهنمایی تون
چگونه بعد از آنکه کاربر ، گزینه پرداخت بعد از دریافت را در سبد خرید انتخاب کرد با عبارت: سفارش شما ثبت شد. همکاران با شما تماس می گیرند مواجه شود
سلام و درود به استاد عزیز
نسخه جدید ووکامرس را که بروز میکنم خود ووکامرس بروز میشه اما پایگاه داده ووکامرس بروز نمیشه و اصلاً هوک آپدیت ووکامرس اجرا نمیشه و وقتی روی مشاهده پیشرفت مبزنیم هیچ دستوری اجرا نمیشه!
دستورات زماندی شده ی دیگه اجرا میشن اما دستور بروزرسانی پایگاه داده ووکامرس در عملیات برنامه ریزی شده اصلاً اجرا نمیشه.
خیلی درگیر این موضوع هستم اگه راهنمایی بفرمایید ممنون میشم.
شرمنده، پستی در این مورد در میهن وردپرس ندیدم برای همین اینجا پیام فرستادم.
سلام میتونه دلایل مختلفی داشته باشه. ولی در کل اگر مشکلی رو سایتتون ایجاد نکرده نیازی نیست حتما اجرا بشه.
سلام مجدد استاد
در آینده این موضوع اذیت میکنه چون نسخه دیتابیس و خود افزونه بهتره یکی باشه
میتونید راهنمایی کنید از چی میتونه باشه؟ حس من اینه که یکی از جداول دیتابیس ووکامرس دچار مشکل شده یا پاک شده باشه
آموزشی هست که من بتونم این مشکلمو رفع کنم؟ شما خودتون تا حالا به این مشکل برنخوردید؟ من منابع فارسی و انگلیسی زیادی سرچ کردم اما چیزی پیدا نکردم.
میزنه که درحال بروزرسانی پایگاه داده در پس زمینه هستیم اما بعد چند دقیقه دوباره پیام بروزرسانی پایگاه داده ووکامرسو نمایش میده موقعی هم که میزنیم پیشرفتشو ببینیم میزنه woocommerce_run_update یافت نشد!
اگه میتونید راهنمایی کنید که خیلی درگیرشم. سپاس
مشکل که از schedule های سایت هست با crontrol میتونید چکش کنید.
سلام می خواستم یک تجربه زا در اختیار همه بگزارم
من ووکامرسم زمان ثبت سفارش توی تسویه حساب ارور internal server error را می داد من تمام روش های توی اینترنت و حتی سایت شما را رفتم اما جواب نداد حتی هاستینگ هم نتونست
اما مشکلم با تغییر نسخه php حل شد نسخه ام روی 8.0 بود کردم 7.4 و مشکلم حلشد
سلام
من نمیتونم سفارش ثبت کنم و قتی هم از طریق سبد خرید اطلاعات رو تکمیل میکنم و میزنم ثبت سفارش خطا میزنه
خطاش هم اینه ( خطا در ذخیره سازی عملیات؛ خطای پایگاه داده
لطفا اگه میشه جواب بدین
سلام فضای هاست رو چک کنید پر نشده باشه آموزش حل مشکلات متداول وردپرس رو هم ببینید رو سایت
ببخشید این آموزش کجاست اگه می شه لینک بدید
https://mihanwp.com/error-establishing-a-database-connection/
خدمت شما
درود جناب راد
2 سوال داشتم محبت کنید راهنمایی بفرمایید.
اول: اگر خریدها بدون ایمیل و شماره موبایل انجام بشه چطور؟ (استفاده از پلاگین دیجیتس)
دوم: اگر سفارش ها بصورت دستی انجام بشه چطور اون کاربر از حالت میهمان به کاربر مشتری تبدیل بشه.
تشکر
توضیحات کامل:
یه سایتی داریم نیاز داریم همزمان بجز خرید آنلاین، سفارش های حضوری رو هم بصورت دستی (افزودن دستی سفارش) ثبت کنیم که موجودی کالای فروشگاهمون بهم نریزه.
یه مشکلی دارم اون هم اینکه وقتی سفارش رو دستی ثبت میکنیم کاربر رو میهمان میذاره و به بخش کاربرهای سایت اضافه نمیشه که بتونیم بعدا از اطلاعات کاربر استفاده کنیم. روی روش ثبت نام با ایمیل راهکارهایی بدست اوردم که مشتری میهمان رو به کاربر تبدیل کنه اما ما ثبت ناممون خلاصه میشه به تلفن همراه و نام و ایمیل استفاده نمیکنیم (بخاطر افزونه دیجیتس)
در بخش ووکامرس > مشتری ها هم میشه مشتری های میهمان رو خروجی گرفت اما چون از دیجیتس استفاده میکنیم اونجا شماره موبایل نمایش نداره ک خروجی بگیریم ازش استفاده کنیم.
راهی هست این مشتری های مهمان تبدیل به کاربر بشن؟
سلام راهی نیست به جز اینکه با یک پلاگین اختصاصی این کارو انجام بدید.
درود
۱. باید کد رو تغییر بدید و از فیلد موبایل بگیرید
۲. یکم سخت شد. بهتره کد اختصاصی استفاده بشه برای این مورد همراه با ویرایش صفحه ویرایش سفارش
سلام.
من توی سایت نمی خوام افراد بدون اینکه عضو بشن خرید کنن، با برداشتن تیک این مورد توی ووکامرس وقتی مشتری اضافه به سبد رو می زنه و بعد تسویه حساب رو میزنه، به صفحه ای منتقل می شه که نوشته: برای تسویه حساب باید وارد شوید.
چی کار کنم که به جای اینکه به این صفحه بیاد، مستقیم بره به صفحۀ ورود و ثبت نام؟
سلام میتونید خرید مهمان رو فعال کنید یا از ریدایرکت خودکار استفاده کنید که نیاز به تغییر برنامهنویسی و استفاده از توابع ووکامرس و وردپرس داره.
سلام دوتا سوال دارم :
۱- من برای ثبت نام بجای ایمیل از دیجیتس استفاده میکنم ، آیا این کد برای دیجیتس هم کار میکنه؟
۲- آیا با آپدیت قالب این کدها از بین نمیرن؟ چطوری یکبار برای همیشه این کدهارو استفاده کنم؟
ممنون میشم راهنماییم کنید.
سلام
۱. فکر نمیکنم
۲. بهتره توی چایلدتم اضافه بشه یا افزونه اختصاصی
عالی بود، سپاس
سپاس از شما
سلام. ۴ هفته پیش الکسای سایتم ۵۰ هزار بود. الآن شده ۷۷ هزار ! bizef .ir این آدرس سایتمه. چرا این طور شده؟ من مدام مقاله منتشر میکنم
سلام تفاوتی بین الکسای ۵۰ هزار و ۷۷ هزار وجود نداره. باید بیشتر کار کنید و الکسای زیر ۲۰ هزار کسب کنید اونوقت میتونید بررسی کنید که الکسای شما افت کرده یا خیر
سلام
الکسای وبسایت من 25 هزار بود و ما شروع کردیم به تولید محتوا
بعد طی 3 هفته رسید به 5 هزار – و یهو بعد چند هفته رفت 10 هزار !!
الانم نزدیک 7 هزار شده
علت این همه تغییر زیاد رتبه چی میتونه باشه ؟
درود بر شما سرعت سایت شما تاثیر زیادی در رتبه الکسا داره. سرعت رو بررسی کنید.
دقیقا تنها چیزی که تغییر کرده طی این دوره سرعت سایت بود!!
دقت نکرده بودم اصلا 🤔
واقعا ممنونم آقای حسینی راد :)))
خواهش میکنم.
سلام. خواهش میکنم انیمیشنهای ورودی و خروجی خبردار رو حذف نکنید.
با تشکر
سلام این موضوع باعث حرکت کلی محتوای سایت موقع لود شدن میشه و کمی تجربه کاربری رو نامناسب جلوه میده
سلام و درود
حالا اگه ایمیل اختیاری باشه و بخوایم این اتفاق برای شماره موبایل که الزامی هست بی افته باید چیکار کنیم؟
درود بر شما
کافیه از billing_email استفاده نکنید و به جاش فیلد موبایل رو وارد کنید.
سلام ، خسته نباشید ، محتوا بسیار مفید بود، برای ایمیل تست کردم درست عمل میکرد، ولی برای شماره موبایل چون ما از افزونه دیجیتس استفاده میکنیم و ایمیل ضروری نیست ، با اینکه به جای biling-email طبق فرمایش شما از biling-phone استفاده کردم نتیجه ای نداشت و سفارش ثبت شده مهمان با یک شماره موبایل خاص در لیست سفارشات اکانت ساخته شده با اون شماره موبایل قرار نمیگیره مانند حالت ایمیل :(کد را به صورت زیر استفاده کردم)
function mihanwp_set_customer_email($order,$data){
$email = $data[‘billing_phone’];
if(email_exists($email)){
$user = get_user_by(’email’,$email);
$order->set_customer_id($user->ID);
}
}
add_action(‘woocommerce_checkout_create_order’,’mihanwp_set_customer_email’,10,2);
آیا باید تغییررات دیگری هم انجام میدادم و یا چون از افزونه دیجیتس استفاده میکنیم نباید از billing_phone استفاده میکردم ؟! ممنون میشم راهنمایی کنین در این رابطه چون الان اکثر سایتهای فروشگاهی مبناشون شماره موبایل هست و کمتر از کاربرا ایمیل دریافت میکنن برای ثبت نام و خرید …
حتی اگر افزونه ای هم باشه که به صورت خودکار مشتریان مهمان ما را به کاربر مشتری تبدیل کنه با همان شماره موبایل سفارش خوبه! (البته با همان اولویت شماره موبایل، ایمیل ندارن اکثر کاربرای ما) این مشکل رو برای ما حل کنه خوبه، معرفی کنین شما، با تشکر
درود بر شما سپاس. شما باید بررسی کنید که تلفن ها در فرم ثبت سفارش از کاربر دریافت میشه. اگر بله درسته و به جای get_user_by باید از دریافت یوزر با تلفن استفاده کنید.
سلام
اگه ممکنه لطفا یک تکه کد هم برای شماره موبایل در صفحه پرداخت قرار بدید چون الآن اکثرا از شماره موبایل استفاده میشه بجای ایمیل
سلام یک سوال داشتم شما هنوز هم برای آپدیت محصولاتتان در وبسایتتان از ایزی دیجیتال دانلود استفاده میکنید؟
من از میهن پنل هم استفاده میکنم و میخوام آپدیت محصولات با همین ووکامرس صورت بگیرد لطفا راهنمایی کنید.
درود بر شما ما از ووکامرس استفاده میکنیم در سیستم جدید
سلام خوب چگونه آپدیت های محصولات رو تو میهن پنل با استفاده از ووکامرس نشون بدیم؟
بستگی داره از چه افزونهای برای آپدیت محصولات استفاده میکنید. باید کدش رو قرار بدید در میهن پنل
با سلام من از همین ووکامرس فقط استفاده میکنم چه کدی قرار بدم که فایل جدیدی اگر در دوره اضافه کردم به اون صفحه هم تو میهن پنل اضافه بشه؟
لطفا راهنمایی و کمک کنید و کد رو هم لطف کنید بگید چی بنویسم
شما باید از افزونههای آموزش آنلاین در کنار ووکامرس استفاده کنید. کد خاصی نداره و هر افزونهای که استفاده کنید کد خاص خودش رو داره. ما از افزونه اختصاصی برای اینکار استفاده میکنیم.
با سلام خوب افزونه پیشنهادی شما چی هست؟
لطفا راهنمایی کنید و بگویید
چرا که سایت من فروش فایل آنلاین است و فایل هام باید آپدیت بشه
تشکر از لطف شما
افزونه learnpress بسیار مناسب هست.
تشکر از شما آقای رضا راد
سلام خدمت شما
از همون ایزی دیجیتال دانلود بخوام استفاده کنم چجوریه؟
لطفا یک آموزش ازش بزارید ببینیم چجوری میتونیم با ایزی دیجیتال دانلود آپدیت محصولات رو بیاریم
سلام در هر صورت باید پلاگین اختصاصی برای اتصال پلاگین اختصاصی خود به سیستم آپدیت بسازید.
با سلام البته ایزی دیجیتال هم بدرد نمیخوره چون کاربر هم باید محصول ووکامرس رو بخره هم ایزی دیجیتال دانلود
لرن پرس هم که به کار ما نمیاد چون محتوای آموزشی تولید نمیکنیم لطفا کمکمون کنیم.
چرا افزونه آپدیت محصولات که اختصاصی طراحی کردید رو در اختیار ما خریدارانتان قرار نمیدیدی لطفا و لطفا راهنمایی کنید کمکامان کنید چون خیلی مهمه
سلام. برای انتشار یک محصول باید به حجم بازار محصول توجه کنیم. اگر این مورد را منتشر کنیم علاوه بر مشکلات زیادی که برای راهاندازی خواهد داشت، حجم بازار بسیار کمی برای فروش محصول خواهیم داشت.
با سلام خوب هستید؟
خوب میتونید راهنمایی کنید من الان چیکار کنم؟
سلام آقای رضا راد یعنی هیچ افزونه ای برای آپدیت فایل ها در ووکامرس موجود نیست؟
سلام توی سایت سرچ کنید آموزش ساخت افزونه رو قرار دادیم.
منظورتون اینه افزونه اختصاصی باید بنویسیم؟
بله
لرن دش هم عالیه کارش
با سلام خوب هستید؟
من دامنه وبسایتم 17 حرفی است و ir هم هست.
به نظر شما در آینده سئو وبسایتم با تکنیک های اصولی و درست خوب و اوکی میشه؟
الان که سئو سایتم خیلی پیشرفت کرده و خیلی خوبه.
اما در آینده میتونم سئو خیلی بهتری را با این دامنه 17 حرفی به علاوه ار که میشه 19 داشته باشم؟
درود بر شما بله مشکلی در سئو نیست اما طول دامنه کمی زیاد هست.
با سلام خدمت شما
یعنی یک دامنه کم حرفی تر هم خریداری کنم؟
سلام اگر سایت تازه راه اندازی شده دامنه را به دامنه کوتاه تری تغییر بدید
سلام سایت تقریبا چند ماه هست اوردمش بالا و تو این چند ماه خیلی سئو سایتم رو افزایش دادم هم اسم سایت من که سرزمین وردپرس هست چندتا سایت دیگه هم بوده قبلا هم اسم سایتم و من تو این چندماه با حرکات اصولی سئو سایتم رو افزایش داده و از اونا جلو زدم
چی فکر میکنید چیکار کنم؟
هر تصمیمی خوبیها و بدیهایی داره. باید این مورد رو خودتون تشخیص بدید که دامنه رو تغییر بدید یا خیر.
با سلام بله قطعا همینطور ولی تغییر تغییر هم نمیخوام بدم مثلا میخوام وقتی دامنه جدید که خریدم مثلا این دامنه ها ریدایرکت بشن مثلا دامنه الان من اینه میخوام دامنه جدید بخرم و اون رو اصلی قرار بدم و وقتی این دامنه بلند جستجو شد اون دامنه کوتاه بالا بیاد
اگر از ریدایرکت استفاده کنم بازم ممکن هست که در سئو اختدال ایجاد شود؟
در هر صورت روی سئو تاثیر خواهد داشت. شما باید دامنه خود را ریدایرکت ۳۰۱ کنید تا تاثیر کمتری در سئو داشته باشه
بله قطعا
ولی از چه دامنه ای به چه دامنه ای ؟
یعنی دامنه بلند ریدایرکت به کوتاهه بشه یا کوتاه به بلنده؟
دامنه فرعی به دامنه اصلی. باید ببینید میخواید کدوم یکی دامنه اصلی شما باشه
سلام
میتونید برای دسترسی بهتر میتونید دامنه کوتاه تری بخرید و ریدایرکت کنید به دامنه اصلی
اینجوری ریسک کمتری داره
مثلا میتونید دامنه sarzaminwp رو بخرید و ریدایرک کنید تا کاربر راحت تر ادرس رو بزنه
استفاده از اسم wordpress توی دامنه باعث میشه تا شرکت وردپرس اون دامنه رو توی یه مدت زمانی ازتون بگیره و توی قوانینشم هست پس شما هرچه زود تر اسم سایتتون رو عوض کنید یا به جای وردپرس از wp استفاده کنید
این موضوع مدتها بحث بود اما ما سالها تست کردیم و مشکلی نداشت.
آقای علی حاجی محمدی گفتن که دامنه ای داشتن که عبارت wordpress رو داشت و وردپرس دامنه رو گرفت ازشون که !
اطلاعی از این موضوع ندارم اما ما چند سال با چنین دامنهای کار کردیم و مشکلی نداشتیم. شاید دلیلش شباهت بسیار زیاد دامنه با سایت وردپرس دات کام بوده باشه و حس کردن داره سو استفاده از نام وردپرس میشه