افزونه ووکامرس از محبوبترین پلاگینهای فروشگاهساز وردپرس می باشد که امکانات زیادی برای مدیریت فروشگاههای آنلاین فراهم میکند.
اما این افزونه مشکلات مختلفی نیز دارد که اکثرا کاربران در حین فعالیت وبسایت شان متوجه آن می شوند.
یکی از مشکلاتی که کاربران ووکامرس با آن مواجه میشوند، مشکل wc-ajax=get_refreshed_fragments است که سرعت بارگذاری صفحات وبسایت را به حد زیادی کاهش می دهد.
این مشکل دقیقا زمانی رخ میدهد که ووکامرس به صورت مداوم درخواستهای AJAX را برای بهروزرسانی سبد خرید کاربر ارسال میکند.
این موضوع باعث درگیر شدن منابع پردازشی سرور و افت سرعت بارگذاری صفحات سایت میشود و عملا فروشگاه را با مشکل روبرو می کند.
راهحلها
برای رفع این مشکل، میتوانید از روشهای زیر استفاده کنید:
۱. استفاده از افزونه Disable Cart Fragments :
افزونه Disable Cart Fragments به طور خاص برای غیرفعال کردن درخواستهای AJAX سبد خرید نوشته شده و می توانید برای رفع مذکور از این افزونه استفاده کنید.
دقت داشته باشید که این افزونه هیچ صفحه خاصی برای تنظیمات ندارد و صرفا نیاز است افزونه را نصب و فعال کنید.
۲- استفاده از اکشن در فانکشن قالب :
برای ایجاد تغییرات در فانکشن قالب نیاز است نهایت دقت را داشته باشید. لذا قبل از اقدام حتما از سایت خود بکاپ تهیه کنید تا در صورت بروز مشکل بتوانید سایت تان را به حالت قبل برگردانید.
برای رفع مشکل نیاز است قطعه کد زیر را به فایل functions.php قالب وردپرس تان اضافه کنید.
add_action( 'wp_enqueue_scripts', 'dequeue_woocommerce_cart_fragments', 11);
function dequeue_woocommerce_cart_fragments() { if (is_front_page()) wp_dequeue_script('wc-cart-fragments'); }
بعد از اعمال کد بالا در فانکشن قالب نیاز است به بخش پیکربندی ووکامرس وارد شده و به منوی محصولات مراجعه نمایید.
در این صفحه تیک گزینه انتقال به برگه سبد خرید بعد از افزودن به سبد را فعال کنید.
پس از انجام یکی از دو مورد بالا به صفحه اصلی فروشگاه خود مراجعه نموده و عملکرد سبد خرید را سایت تان را بررسی نمایید. باید متوجه افزایش سرعت بارگذاری صفحه و کاهش تعداد درخواستهای AJAX ششه باشید.
نتیجه گیری
رفع مشکل wc-ajax=get_refreshed_fragments میتواند تاثیر چشمگیری در عملکرد و سرعت بارگذاری صفحات سایت داشته باشد.
با استفاده از روشهای ذکر شده، میتوانید این مشکل را به سادگی حل کرده و تجربه کاربری بهتری را برای مشتریان خود فراهم کنید.
در صورت وجود هرگونه سوال از بخش نظرات با ما در ارتباط باشید.