Gana dažna internetinių parduotuvių su „WooCommerce“ problema yra per didelis procesoriaus pakrovimas su pirkinių krepšelio „Ajax“ užklausomis. Fix wc-ajax = get_refreshed_fragments High CPU Usage.
turinys
Per didelis bet kurio dabartinio scenarijaus procesorių pakrovimas, nieko nedaro, kaip tik į Sumažinkite internetinių parduotuvių puslapių įkėlimo greitį, suteikti žemą SEO balą ir vartotojo patirtį. Mažiau užsakymų svetainėje.
Kas yra ir kas naudoja tardymą wc-ajax = get_refreshed_fragments
Apie visų prasmę, naudodamas šį „Ajax“ scenarijų, WooCommerce leisti Produktų pridėjimas prie krepšelio ir atnaujinti pirkinių krepšį be tinklalapio atnaujinimo. Pirkinių krepšelis bendraus asinchroniniu su pagrindinio serverio serveriu per „Ajax“ (asinchroninį „JavaScript“ ir „XML“).

Iš anksto nustatytas, /?wc-ajax=get_refreshed_fragments yra visuose svetainės puslapiuose, kad būtų galima sekti veiksmus Add to Cart vartotojo ir pakeitimų, kurie gali įvykti pirkinių krepšelio valdiklyje. Šie veiksmai yra tie, kurie įdeda procesus į procesorių ir sulėtina tinklalapių įkėlimo greitį. Kartais 4-5 sekundės, o tai yra labai daug.
Pataisykite WC-AJAX = GET_REFRESHED_FRAGMENTS AUKŠTAS
Jei nenaudojate dinaminio pirkinių krepšelio valdiklio antraštėje ar kitoje nuolatinėje parduotuvės srityje, geriausia atsisakyti dinaminio atnaujinimo ir sekti krepšelio pridėjimo / atnaujinimo veiksmus.
Galite išjungti AJAX Cart Fragments Archyvo puslapiuose ir nukreipkite vartotojus tiesiai į pirkinių krepšelį, kai į krepšelį pridedamas produktas.
WooCommerce → Settings → Products.

Jei norite palikti šį scenarijų suaktyvinti “Add to Cart Ajax“, bet nevaikščiokite pirmame parduotuvės puslapyje, redaguokite dabartinės temos failą.php ir pridėkite šį kodą:
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'); }
Scenarijuje, kuriame, be „WooCommerce“ puslapių, turite tinklaraštį ar kitus asmeninius puslapius, kurie nėra sukurti, gera idėja yra išjungti jų fragmentus.
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');
}
Iš viso išjungimo ir fix wc-ajax = get_refreshed_fragments High CPU Usage (Disable AJAX Cart Fragments) atliekamas su šiuo kodu:
add_action ('wp_enqueue_scripts', 'dequeue_woocommerce_styles_scripts', 99);
function dequeue_woocommerce_styles_scripts () {
if (function_exists ('is_woocommerce')) {
if (! is_woocommerce () &&! is_cart () &&! is_account_page () &&! 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');
}
}
}
Pasirinkę vieną iš šių metodų (ypač paskutinį), iškart pastebėsite padidėjusį internetinės parduotuvės įkėlimo greitį ir daug mažesnį išteklių suvartojimą procesoriui (CPU).