Виправлено wc-ajax = get_refreshed_fragments High CPU Використання (вимкнути фрагменти кошика AJAX)

Досить поширеною проблемою інтернет-магазинів з WooCommerce є надмірне навантаження на процесор AJAX-запитами кошика. Fix wc-ajax = get_refreshed_fragments High CPU Usage.

Надмірне завантаження процесів CPU будь-яким поточним сценарієм не робить нічого, крім зменшує швидкість завантаження сторінок інтернет-магазину, щоб забезпечити низький рейтинг SEO та оцінку взаємодії з користувачем. Менше замовлень на сайті.

Що таке і для чого використовується запит wc-ajax = get_refreshed_fragments

Для загального розуміння, за допомогою цього сценарію AJAX, WooCommerce дозволяє додавання товарів у кошик і оновлення кошика без оновлення веб-сторінки. Кошик для покупок асинхронно спілкуватиметься з хост-сервером через AJAX (асинхронний JavaScript і XML).

Виправлено wc-ajax = get_refreshed_fragments High CPU Використання
AJAX Add до кошика

За замовчуванням, /?wc-ajax=get_refreshed_fragments присутній на всіх сторінках сайту, щоб стежити за діями Add to Cart користувача та зміни, які можуть відображатися у віджеті кошика для покупок. Саме ці дії запускають процеси CPU і сповільнити швидкість завантаження веб-сторінок. Іноді на 4-5 секунд, що дуже багато.

Виправлено wc-ajax = get_refreshed_fragments High CPU Використання (вимкнути фрагменти кошика AJAX)

Якщо ви не використовуєте динамічний віджет кошика в шапці або в іншій постійній області магазину, краще відмовитися від динамічного оновлення та відстеження дій додавання/оновлення кошика.

Ви можете вимкнути його AJAX Cart Fragments на сторінках архіву та перенаправляти користувачів безпосередньо до кошика для покупок, коли продукт додається до кошика.

WooCommerce → Settings → Products.

Забороняти Add до кошика AJAX
Забороняти Add до кошика AJAX

Якщо ви хочете залишити цей скрипт активованим "Add to Cart 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'); }

У випадку, коли окрім сторінок WooCommerce у вас також є блог або інші спеціальні сторінки, на яких немає продуктів, гарною ідеєю буде відключити їх фрагменти.

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');
}

Повна дезактивація і fix wc-ajax = get_refreshed_fragments High CPU Usage (Disable AJAX Cart Fragments) це робиться за допомогою такого коду:

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');
}
}
}

Вибравши один з цих способів (особливо останній), ви відразу помітите збільшення швидкості завантаження інтернет-магазину і значно меншу витрату ресурсів на процесорі (CPU).

Як записатися » WordPress » Виправлено wc-ajax = get_refreshed_fragments High CPU Використання (вимкнути фрагменти кошика AJAX)

Захоплюючись технологіями, я люблю тестувати та писати підручники про операційні системи macOS, Linux, Windows, про WordPress, WooCommerce і налаштувати веб-сервери LEMP (Linux, NGINX, MySQL і PHP). Я пишу далі StealthSettings.com з 2006 року, а через кілька років я почав писати на iHowTo.Tips підручники та новини про пристрої в екосистемі Apple: iPhone, iPad, Apple Годинник, HomePod, iMac, MacBook, AirPods та аксесуари.

Залишити коментар