
مشکلی که چند ماهی ما و کاربران وردپرسی با آن دستوپنجه نرم میکردیم، مشکل پرداختهای ناموفق ایزی دیجیتال دانلودز و ووکامرس با نسخه جدید گوگل کروم بود. تمام پرداختهایی که با درگاههای پرداخت بانکی مثل بهپرداخت ملت و پرداخت سامان انجام میشد. به دلیل استفاده از SoapClient با پیام عدم دریافت اطلاعات پرداخت مواجه میشدند. این مشکل فقط در نسخه جدید گوگل کروم وجود داشت و باید مشکل پرداخت ناموفق در گوگل کروم را با هر روش ممکن برطرف میکردیم.
فقط در نسخه جدید گوگل کروم!
این مشکل فقط در مرورگر گوگل کروم نسخه ۸۴ به بعد نمایش داده میشد و در مرورگر هایی نظیر فایرفاکس هیچ مشکلی با پرداخت نداشتیم. پس نتیجه گرفتیم که مشکل از گوگل کروم هست.
چند ماهی درگیر این قضیه بودیم. از سایتهای خارجی و فرومهای پشتیبانی وردپرس و گوگل کروم تا سایتهای ایرانی خدمات دهنده هاستینگ را بررسی کردیم. چندتا از ارائه دهندههای هاستینگ عزیز هم پیشنهاد کردند با مبلغی حدود ۳۰۰ هزار تومان مشکل را بررسی و حل خواهند کرد. اما مسئله مبلغ نبود. میخواستیم این مشکل را پیدا کنیم و بهعنوان یک مرجع وردپرس فارسی راهحل را در اختیار شما عزیزان قرار دهیم.
بررسی تغییرات نسخه جدید گوگل کروم
در نتیجه تصمیم گرفتیم به سراغ Changelog گوگل کروم برویم و ببینیم در نسخههای جدید کروم چه قابلیتها و تغییراتی اضافه شده. به موضوعی برخوردیم که مربوط به امنیت بیشتر گوگل کروم بود. بله دوستان گوگلی قابلیتی به گوگل کروم اضافه کرده بودند که باعث میشد برای امنیت کاربر، اگر شما کاربری را به سایت دیگری منتقل کنید و آن وبسایت بیش از ۲۰ ثانیه کاربر را نگهدارد، بعدکه کاربر به سمت سایت شما آمد، تمام سشنها از نو نوشته میشود.
Session چیست
Session در واقع متغیری خاص از کوکی هست که در مرورگر ذخیره میشود تا بررسی کنیم که این کاربر مهمان که روی سایت ما خرید انجام داد، با این session خاص که در مرورگرش ذخیره شده همان شخصی هست که قبلا از سایت ما به درگاه پرداخت ارجاع داده شده. وقتی کاربر در سایت ما لاگین نکرده باشد، با کوکی و سشن میتوانیم مقادیری را برای شناسایی آن کاربر در نظر بگیریم.
حالا که کروم سشنهای کاربر ما را حذف میکرد، طبیعتا کاربر ما نمیتوانست خرید خود را تکمیل کند. چراکه اصلا Easy Digital Downloads یا ووکامرس این کاربر را تشخیص نمیداد.
حل مشکل پرداخت ناموفق در گوگل کروم
برای حل این مشکل کافیست این قابلیت گوگل کروم را برای سایت خود غیر فعال کنیم. البته غیرفعال کردن این قابلیت نیاز به تغییر Rule های وب سرور شما دارد که اینکار باید توسط هاستینگ انجام شود. اما راه دیگری در وردپرس هست که به آن Define کردن میگوییم. کافیست کد زیر را در خط ۲ فایل wp-config.php قرار دهید تا مشکل برای همیشه حل شود.
define( 'WP_SAMESITE_COOKIE', 'None' );
به همین راحتی. شما مشکل پرداختهای ناموفق در نسخه جدید گوگل کروم را حل کردید.
موفق باشید. 🙂
راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام میهن وردپرس عضو شوید.
ممنون بابت مقاله بسیار مفید و علمیتون.
ولی یه سوال: آیا اگر این کد رو در فایل wp-config.php قرار بدیم مشکل امنیتی برای وبسایت ندارد؟
درود بر شما سپاس. خیر مشکلی نداره
در چنین مواردی که تو برگشت از درگاه پرداخت، سشن ها پاک میشه، وضعیت سفارش دقیقا چی میشه؟ لغو میشه یا در انتظار پرداخت میشه؟ یعنی می خوام بدونم مواقعی که درگاه به سایت بر نمیگرده، چه ریکوئستی به سایت ارسال میشه؟
سلام
ممنون از محتوای کاملتون.
درگاه سایتم زرین پاله و موارد معدودی داشتم که یه کاربر چند بار اقدام به ثبت سفارش کرده و موفق نشده. البته تو این موارد سفارش تو وضعیت در انتظار پرداخت قرار گرفته. ولی نمی دونم این موارد به خاظر همین موضوعیه که گفتین یا نه.
چون موارد زیادی هم بوده که پرداخت به درستی انجام شده. حتی با آنالیتیکس ورژن مرورگرهای کاربرها رو هم بررسی کردم، با کروم نسخه های 84 به بعد هم سفارش داشتیم. و خودم هم تست می کنم مشکلی وجود نداره
حالا من چجوری می تونم بفهمم که این مشکل برای من وجود داره یا نه؟ و آیا نیازه که این قطعه کد رو قرار بدم یا نه؟
ممنون میشم راهنماییم کنین.
باسلام
خیر زرین پال مشکلی نداره با این موضوع و بدون مشکل کار میکنه. پرداخت ها در این وضعیت در انتظار پرداخت میشه
سلام.
ممنون از پست و تجربیاتی که به اشتراک میزارین.
در سایت منم خیلی عجیبه که چرا کاربر چند بار تلاش میکنه و نمیتونه مثلا اکانتشو ویژه کنه. در حالی که خودم با همه مرورگرها تست کردم در وصل شدن به دراه بانکی مشکلی وجود نداره. ولی خب شاید مشکل منم به خاطر همین کوکی ها باشه.
یک پیشنهاد هم داشتم برای میهن وردپرس در مورد بخش نظرات. این قسمت کاربرو آزار میده که اگر لاگین کرد به پیشخوان میره و به صفحه پیشفرضی که بوده ریدایرکت نمیشه. به نظرم به همون صفحه ای که بوده ریدایرکت بشه بهتره تا پیشخوان.
سلام
سپاس از توجه شما
پیشنهاد شما رو به مدیریت سایت منتقل خواهیم کرد