Last active
September 2, 2024 04:54
-
-
Save ontiuk/72f6ac868d397678fb8b31df2b22e32a to your computer and use it in GitHub Desktop.
Woocommerce Remove Select2 / SelectWoo
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Add to your theme's functions.php file. De-queues Select2 styles & scripts. Useful to keep Boostrap form control formatting | |
/** | |
* Remove Woocommerce Select2 - Pre WC 3.2.1-ish | |
*/ | |
function woo_dequeue_select2() { | |
if ( class_exists( 'woocommerce' ) ) { | |
wp_dequeue_style( 'select2' ); | |
wp_deregister_style( 'select2' ); | |
wp_dequeue_script( 'select2'); | |
wp_deregister_script('select2'); | |
} | |
} | |
add_action( 'wp_enqueue_scripts', 'woo_dequeue_select2', 100 ); | |
/** | |
* Remove Woocommerce Select2 - Woocommerce 3.2.1+ | |
*/ | |
function woo_dequeue_select2() { | |
if ( class_exists( 'woocommerce' ) ) { | |
wp_dequeue_style( 'select2' ); | |
wp_deregister_style( 'select2' ); | |
wp_dequeue_script( 'selectWoo'); | |
wp_deregister_script('selectWoo'); | |
} | |
} | |
add_action( 'wp_enqueue_scripts', 'woo_dequeue_select2', 100 ); |
For newer versions of WooCommerce, the handle that should be removed is wc-country-select
:
wp_dequeue_script( 'wc-country-select');
wp_deregister_script( 'wc-country-select' );
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Instead of wondering "what if", just check if it's being used or not and know where it's safe to remove it or not. For example, this is for select boxes UI right? Well, if there's no select boxes on the page, then it's not being used and is adding bloat to the page for no reason.
Write some code that only dequeues it on pages that don't use it. For me the only pages that need this are product pages, cart, and checkout. So the code says is it one of those pages? If not, dequeue it, and it speeds up the page load time with one less render blocking resource.