Виправити wc-ajax = get_refreshed_fragments Високе використання процесора (вимкніть фрагменти кошика Ajax)
Досить поширеною проблемою інтернет-магазинів з WooCommerce є надмірне навантаження на процесор AJAX-запитами кошика. Fix wc-ajax = get_refreshed_fragments High CPU Usage.
зміст
Надмірне завантаження процесів процесора будь-яким поточним сценарієм не робить нічого, крім зменшує швидкість завантаження сторінок інтернет-магазину, щоб забезпечити низький рейтинг SEO та оцінку взаємодії з користувачем. Менше замовлень на сайті.
Що таке і для чого використовується запит wc-ajax = get_refreshed_fragments
Для загального розуміння, за допомогою цього сценарію AJAX, ВООКУМЕРСЬКА дозволяти додавання товарів у кошик та оновлення кошика без оновлення веб-сторінки. Кошик для покупок асинхронно спілкуватиметься з хост-сервером через AJAX (асинхронний JavaScript і XML).

За умовчанням /?wc-ajax=get_refreshed_fragments присутній на всіх сторінках сайту, щоб стежити за діями Add to Cart користувача та зміни, які можуть відображатися у віджеті кошика для покупок. Ці дії перекладають процеси на процесор і сповільнюють швидкість завантаження веб-сторінок. Іноді на 4-5 секунд, що дуже багато.
Виправити wc-ajax = get_refreshed_fragments Високе використання процесора (вимкніть фрагменти кошика Ajax)
Якщо ви не використовуєте динамічний віджет кошика для покупок в шапці або в іншій постійній області магазину, найкраще відмовитися від динамічного оновлення та відстеження дій додавання/оновлення кошика.
Ви можете вимкнути його AJAX Cart Fragments на сторінках архіву та перенаправляти користувачів безпосередньо до кошика для покупок, коли продукт додається до кошика.
- Критична вразливість, виявлена в WooCommerce – Мільйон інтернет -магазинів може бути порушено
- Показати загальну кількість запитів бази даних, використання пам'яті & Час виконання (WordPress)
WooCommerce → Settings → Products.

Якщо ви хочете залишити цей скрипт активованим “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).
Виправити wc-ajax = get_refreshed_fragments Високе використання процесора (вимкніть фрагменти кошика Ajax)
Що нового
Про Stealth
Пристрасний до технологій, я із задоволенням пишу на Stealthsetts.com, починаючи з 2006 року. У мене багатий досвід роботи в операційних системах: MacOS, Windows та Linux, а також у програмах програмування та платформ ведення блогів (WordPress) та для інтернет -магазинів (WooCommerce, Magento, Presashop).
Переглянути всі дописи від StealthВас також може зацікавити...