ووکامرس یکی از محبوب ترین فروشگاه سازهای آنلاین تحت وردپرس است، که این افزونه تا بحال بیش از 5 میلیون نصب فعال داشته است. امروزه چیزی حدودا 30% فروشگاه هایی که در سطح اینترنت مشاهده میکنید بر پایه ووکامرس هستند. جهت یادگیری قدم به قدم ووکامرس میتوانید از آموزش زیر استفاده کنید. همچنین در ادامه با ما همراه باشید تا یکی از مشکلات رایجی که در هنگام استفاده از ووکامرس ممکن است با آن روبرو شوید و نحوه رفع آن را به شما آموزش دهیم.
⇐ آموزش قدم به قدم کار با ووکامرس
آموزش رفع مشکل کند شدن بارگذاری صفحات
درصورتی که از ووکامرس استفاده میکنید، پس از بررسی سایت وردپرسی خود با ابزارهای تست سرعت یکی از مشکلاتی که احتمال روبرو شدن شما با آن زیاد است، درگیر شدن هاست شما با درخواست wc-ajax=get_refreshed_fragments است. در این آموزش ما سعی داریم نحوه برطرف کردن این مشکل را به شما بیاموزیم پس با ما همراه باشید.
wc-ajax=get_refreshed_fragments چیست؟
اسکریپت wc-ajax=get_refreshed_fragments هر بار که کاربر وارد صفحه ای میشود، محتویات سبد خرید او را بررسی کرده و آن را بروزرسانی میکند. گاهی اوقات با توجه به منابع هاست انجام این درخواست با کاهش سرعت مواجه میشود. همچنین این کاهش سرعت با ورود کاربر به هر صفحه بیشتر میشود و در نهایت با افزایش ترافیک سایت، اجرا با تاخیر شدیدی انجام میشود.
از دیگر مشکلات این اسکریپت اجرای آن در صفحاتی مانند درباه ما وتماس با ما است که هیچ گونه محصولی در این صفحات وجود ندارد که نیاز به بروزرسانی صفحه خرید باشد.
نحوه رفع مشکل wc-ajax=get_refreshed_fragments
جهت رفع مشکل wc-ajax=get_refreshed_fragments راه هایی وجود دارد که در ادامه به بررسی هر یک و آموزش آنها به شما میپردازیم.
افزونه جهت متوقف سازی Admin Ajax Calls ووکامرس
استفاده از افزونه Disable Card Fragments آسان ترین روش برای رفع این مشکل است. این افزونه به سادگی قابل دانلود، نصب و فعالسازی است و همچنین تنظیمات خاصی ندارد.
⇐ دانلود افزونه Disable Cart Fragments
جهت متوقف کردن کار افزونه در برخی صفحات میبایست از کد زیر در فایل wp-config.php استفاده کنید.
⇐ آموزش ویرایش فایل wp-config.php وردپرس در سی پنل
define(‘DISABLE_CART_FRAGMENTS’, ‘ID-1,ID-2,ID-3’);
نکته : به جای بخش ID-1,ID-2,ID-3 شما میبایست ID برگه های موردنظر خود را قرار دهید.
پس از فعالسازی این افزونه میبایست به بخش ووکامرس »»» پیکربندی »»» محصولات مراجعه کرده و گزینه ” فعال کردن ایجکس «افزودن به سبد خرید» در صفحات بایگانی ” را غیرفعال و گزینه ” انتقال به برگه سبد خرید بعد از «افزودن به سبد» را فعال کنید.
غیرفعال کردن سبد خرید در برگه ها و نوشته های سایت
برخی برگه ها و نوشته های سایت شما هستند که اصلا نیازی به وجود سبد خرید در این صفحات نیست در نتیجه بهتر است سبد خرید را در این صفحات غیرفعال کنید.
جهت غیرفعال کردن سبد خرید در صفحات سایت خود، کد زیر را در فایل قالب سایت خود یعنی function.php قرار دهید.
نکته: دقت کنید فایل function.php را هرگز مستقیما ویراش نکنید. جهت قراردادن کد در این فایل از آموزش زیر بهره بگیرید.
⇐ آموزش قرار دادن کد در فایل function.php وردپرس
/** Disable Ajax Call from WooCommerce on front page and posts – Webjame.Com */
add_action( ‘wp_enqueue_scripts’, ‘dequeue_woocommerce_cart_fragments’, 11);
function dequeue_woocommerce_cart_fragments() {
if (is_front_page() || is_single() ) wp_dequeue_script(‘wc-cart-fragments’);
}
غیرفعال کردن AJAX سبد خرید در وردپرس
جهت انجام این کار میبایست کد زیر را به کمک آموزش زیر به فایل function.php قالب وردپرس خود اضافه کنید.
⇐ آموزش قرار دادن کد در فایل function.php وردپرس
/** Disable Ajax Call from WooCommerce */
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’); }
پس از افزودن کد، اکنون از ووکامرس وارد بخش پیکربندی شوید و تب محصولات را انتخاب کنید. در این قسمت با کلیک روی گزینه ” انتقال به برگه سبد خرید بعد از «افزودن به سبد» ” آن را فعال کنید.
نکته: درصورت عدم فعالسازی این گزینه، سبد خرید کاربر پس از افزودن محصول بروزرسانی نخواهد شد.
غیرفعال کردن فایل های اسکریپت و استایل ووکامرس در برگه ها و نوشته ها
ووکامرس دارای تعداد بسیار زیادی از فایل های استایل و اسکریپت میباشد. درصورتی که تعداد صفحات سایت شما زیاد هستند، بهتر است جهت کاهش فشار وارده بر سرور خود، این فایل ها را در صفحاتی که مورد استفاده نیستند غیرفعال کنید.
جهت انجام این کار میتوانید کد زیر را با کمک آموزش زیر، در فایل function.php قالب خود قرار دهید.
⇐ آموزش قرار دادن کد در فایل function.php وردپرس
/** Disable All WooCommerce Styles and Scripts Except Shop Pages – Webjame.Com*/
add_action( ‘wp_enqueue_scripts’, ‘wbj_woocommerce_styles_scripts’, 99 );
function wbj_woocommerce_styles_scripts() {
if ( function_exists( ‘is_woocommerce’ ) ) {
if ( ! is_woocommerce() && ! is_cart() && ! is_checkout() ) {
# Styles
wp_dequeue_style( ‘woocommerce-general’ );
wp_dequeue_style( ‘woocommerce-layout’ );
wp_dequeue_style( ‘woocommerce-smallscreen’ );
wp_dequeue_style( ‘woocommerce_frontend_styles’ );
wp_dequeue_style( ‘woocommerce_fancybox_styles’ );
wp_dequeue_style( ‘woocommerce_chosen_styles’ );
wp_dequeue_style( ‘woocommerce_prettyPhoto_css’ );
# Scripts
wp_dequeue_script( ‘wc_price_slider’ );
wp_dequeue_script( ‘wc-single-product’ );
wp_dequeue_script( ‘wc-add-to-cart’ );
wp_dequeue_script( ‘wc-cart-fragments’ );
wp_dequeue_script( ‘wc-checkout’ );
wp_dequeue_script( ‘wc-add-to-cart-variation’ );
wp_dequeue_script( ‘wc-single-product’ );
wp_dequeue_script( ‘wc-cart’ );
wp_dequeue_script( ‘wc-chosen’ );
wp_dequeue_script( ‘woocommerce’ );
wp_dequeue_script( ‘prettyPhoto’ );
wp_dequeue_script( ‘prettyPhoto-init’ );
wp_dequeue_script( ‘jquery-blockui’ );
wp_dequeue_script( ‘jquery-placeholder’ );
wp_dequeue_script( ‘fancybox’ );
wp_dequeue_script( ‘jqueryui’ );
}
}
}
غیرفعالسازی Heartbeat API
ظاهر زیبا، نمودار های دقیق، اطلاعات بیشتر و جذاب تر و … اینها همگی از عوامل هدر دادن منابع سایت شما هستند که ووکامرس به نمایش میگذارد. با غیرفعال کردن این موارد منابع سایت خود را حفظ کنید.
جهت غیرفعال سازی این موارد، میبایست بخش Heartbeat API را غیرفعال کنید. همچینن میتوانید با افزونه های WP Rocket یا Heartbeat Control آن را کاهش دهید.
⇐ دانلود افزونه HeartBeat Control
⇐ آموزش نحوه کار با افزونه Heartbeat Control
نتیجه گیری:
ووکامرس یکی از بهترین و محبوب ترین فروشگاه ساز های جهان بوده و کاربرد بسیاری دارد اما استفاده از آن نیازمند پشتیبانی دائمی دارد زیرا هر روز ممکن است با مشکل جدیدی روبرو شوید.
دقت کنید که از قالب فروشگاهی و افزونه های وردپرس استاندارد استفاده کنید، زیرا اگر اختلالی در افزونه یا قالب شما پیش بیاید ممکن است با مشکلات ووکامرس نیز روبرو شوید.
همچنین درصورتی که ترافیک ورودی شما بیش از حد است از هاست اختصاصی و یا سرور مجازی استفاده کنید.
امیدواریم آموزش رفع مشکل کند شدن بارگذاری صفحات با wc-ajax=get_refreshed_fragments برای شما مفید بوده باشد و به وسیله آن توانسته باشید این مشکل را در وردپرس خود حل کنید. درصورت بروز هرگونه سوال یا مشکل میتوانید آن را در بخش دیدگاه بیان کنید.
آموزش های مرتبط:
آموزش نصب و راه اندازی ووکامرس
Ajax چیست؟ و نحوه عیب یابی فایل Ajax
آموزش قدم به قدم کار با ووکامرس
آموزش رفع مشکل نصب نشدن افزونه ها