Оптимизация WordPress путём отключения ресурсов WooCommerce

Замечали ли вы, что после активации плагина WooCommerce начинает тормозить весь сайт, а не только страницы магазина?

Это происходит потому что ресурсы магазина (стили и скрипты) загружаются для всего сайта, даже на тех страницах, где они не нужны.

Данный сниппет прекрасно решает данную задачу.


add_action(
 'wp_enqueue_scripts',
 function() {
 // Если это НЕ страницы магазина.
 if ( ! is_woocommerce() && ! is_cart() && ! is_checkout() ) {
 // Отключаем стили магазина.
 wp_dequeue_style( 'woocommerce_frontend_styles' );
 wp_dequeue_style( 'woocommerce-general');
 wp_dequeue_style( 'woocommerce-layout' );
 wp_dequeue_style( 'woocommerce-smallscreen' );
 wp_dequeue_style( 'woocommerce_fancybox_styles' );
 wp_dequeue_style( 'woocommerce_chosen_styles' );
 wp_dequeue_style( 'woocommerce_prettyPhoto_css' );
 wp_dequeue_style( 'select2' );
 
 // Отключаем скрипты магазина.
 wp_dequeue_script( 'wc-add-payment-method' );
 wp_dequeue_script( 'wc-lost-password' );
 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-credit-card-form' );
 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( 'jquery-payment' );
 wp_dequeue_script( 'jqueryui' );
 wp_dequeue_script( 'fancybox' );
 wp_dequeue_script( 'wcqi-js' );
 }
 },
 99
);