Dość powszechnym problemem w sklepach internetowych w WooCommerce jest nadmierne ładowanie procesora z żądaniami AJAX w koszyku. Fix wc-ajax = get_refreshed_fragments High CPU Usage.
treść
Nadmierne ładowanie procesów procesora każdego obecnego skryptu nie robi nic poza Zmniejsz prędkość ładowania stron sklepów internetowych, aby uzyskać niski wynik SEO i wrażenia użytkownika. Mniej zamówień na stronie.
Co jest i co używa przesłuchania w celu WC-Ajax = get_refreshed_fragments
O znaczeniu wszystkich, z pomocą tego skryptu Ajax, WooCommerce umożliwić Dodawanie produktów do kosza i aktualizacja koszyka na zakup bez strony internetowej do odświeżenia. Wózek będzie komunikował się z asynchronicznym z serwerem hosta za pośrednictwem AJAX (asynchroniczny JavaScript i XML).

Określony z góry, /?wc-ajax=get_refreshed_fragments jest obecny na wszystkich stronach witryny do śledzenia akcji Add to Cart użytkownika i zmian, które mogą wystąpić w widżecie koszyka. Działania te są tymi, które wprowadzają procesy na procesor i spowalniają prędkość ładowania stron internetowych. Czasami 4-5 sekund, co jest bardzo bardzo.
Napraw WC-Ajax = get_refreshed_fragments Wysokie użycie procesora (wyłącz fragmenty wózków Ajax)
Jeśli nie używasz dynamicznego widżetu kosza w nagłówku lub w innym stałym obszarze sklepu, najlepiej zrezygnować z dynamicznej aktualizacji i śledzenie działań dodawania / aktualizacji kosza.
Możesz wyłączyć AJAX Cart Fragments Na stronach archiwum i przekieruj użytkowników bezpośrednio do koszyka, gdy produkt jest dodawany do kosza.
WooCommerce → Settings → Products.

Jeśli chcesz zostawić ten skrypt aktywowany “Add to Cart Ajax“, ale nie uruchamiaj się na pierwszej stronie sklepu, edytuj plik funkcji.php bieżącego motywu i dodaj następujący 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'); }
W scenariuszu, w którym oprócz stron WooCommerce masz blog lub inne spersonalizowane strony, które nie są produkowane, dobrym pomysłem jest dezaktywacja ich fragmentów.
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');
}
Całkowite wyłączenie i fix wc-ajax = get_refreshed_fragments High CPU Usage (Disable AJAX Cart Fragments) odbywa się z następującym kodem:
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');
}
}
}
Po wybraniu jednej z tych metod (zwłaszcza ostatnich) natychmiast zauważysz wzrost prędkości ładowania sklepu internetowego i znacznie niższego zużycia zasobów na procesor (CPU).