CHECKING STATUS
I AM LISTENING TO
|

Speed up WordPress / WooCommerce on none commerce pages

19. September 2015
.SHARE

Table of Contents

WooCommerce provides great functionality, but loads a lot of resources even if not needed.

If a site loads longer than 5-7 seconds, potential customers already loose interest :)

UNLOAD ALL THAT IS NOT NEEDED

Add this to your functions.php:

add_action( 'wp_enqueue_scripts', 'cleanup_woocommerce_includes', 99 );

function cleanup_woocommerce_includes(){
 //check that woo exists
 if ( function_exists( 'is_woocommerce' ) ) {
  if ( ! is_woocommerce() && ! is_cart() && ! is_checkout() ) {}
  /*Styles*/
  wp_dequeue_style( 'woocommerce_frontend_styles' );
  wp_dequeue_style( 'woocommerce_fancybox_styles' );
  wp_dequeue_style( 'woocommerce_chosen_styles' );
  wp_dequeue_style( 'woocommerce_prettyPhoto_css' );
  
  wp_dequeue_style( 'woocommerce-layout' );
  wp_dequeue_style( 'woocommerce-smallscreen' );
  wp_dequeue_style( 'woocommerce-general' );
  wp_dequeue_style( 'wc-bto-styles' ); 		
  
  
  /*Scripts*/
  wp_dequeue_script( 'wc-cart' );
  wp_dequeue_script( 'wc-cart-fragments' );
  wp_deregister_script( 'wc-add-to-cart' );
  wp_dequeue_script( 'wc-add-to-cart' );
  wp_deregister_script( 'wc-add-to-cart-variation' );
  wp_dequeue_script( 'wc-add-to-cart-variation' );
  wp_dequeue_script( 'wc-checkout' );
  
  wp_dequeue_script( 'wc-single-product' );
  wp_dequeue_script( 'jquery-blockui' );
  wp_dequeue_script( 'wc_price_slider' );		
  
  wp_dequeue_script( 'wc-chosen' );
  wp_dequeue_script( 'woocommerce' );
  wp_dequeue_script( 'prettyPhoto' );
  wp_dequeue_script( 'prettyPhoto-init' );		
  wp_dequeue_script( 'jquery-placeholder' );
  wp_dequeue_script( 'fancybox' );
  wp_dequeue_script( 'jqueryui' );

  }
 }
}

Like always, make sure that nothing breaks. If things break or are required by certain pages add an exception for that!

Check WordPress Condional Tags.

Sources:

  1. How to Load WooCommerce Scripts and Styles Conditionally to Improve Page Load Speed
  2. Only load WooCommerce scripts on shop pages and checkout + cart

REMOVE GENERATOR META TAG

remove_action( 'wp_head', array( $GLOBALS['woocommerce'], 'generator' ) );
remove_action('wp_head', 'wc_generator_tag');

Enjoy coding …

Let’s Talk!

Looking for a reliable partner to bring your project to the next level? Whether it’s development, design, security, or ongoing support—I’d love to chat and see how I can help.

Get in touch,
and let’s create something amazing together!

RELATED POSTS

Here’s the thing about the macOS menu bar: Apple gives you zero control over it. Your apps just pile in from the right, squeezing together like commuters on a rush-hour train, and you either live with it or you don’t. There’s no padding, no grouping, no breathing room. Just a wall of tiny icons staring […]

PDF operations are one of those recurring pain points that never fully go away. You need to fill a contract template, strip and rewrite document metadata before archiving, generate an invoice from an HTML template, and stamp every page with a branded header. The default answer is a SaaS API subscription that charges per document […]

Generating PDFs on a server is one of those tasks that sounds simple until you actually sit down to do it. HTML-to-PDF rendering drifts between browsers, LibreOffice headless mode is finicky to install, and most SaaS solutions charge per page once you hit volume. Gotenberg solves this cleanly: a single Docker container that bundles headless […]

Alexander

I am a full-stack developer. My expertise include:

  • Server, Network and Hosting Environments
  • Data Modeling / Import / Export
  • Business Logic
  • API Layer / Action layer / MVC
  • User Interfaces
  • User Experience
  • Understand what the customer and the business needs


I have a deep passion for programming, design, and server architecture—each of these fuels my creativity, and I wouldn’t feel complete without them.

With a broad range of interests, I’m always exploring new technologies and expanding my knowledge wherever needed. The tech world evolves rapidly, and I love staying ahead by embracing the latest innovations.

Beyond technology, I value peace and surround myself with like-minded individuals.

I firmly believe in the principle: Help others, and help will find its way back to you when you need it.