Desativar / Desregistrar todos os JS de todos os plugins

Como posso desativar todos os arquivos js dos plugins e carregar um único arquivo js que eu combinei e comprimi?

Existe alguma maneira ?

Solutions Collecting From Web of "Desativar / Desregistrar todos os JS de todos os plugins"

Você poderia instalar um plug-in como o Gerenciador de filas de ativos para acompanhar todas as folhas de estilo e arquivos de javascript ativos (é preaty limpo, você pode visualizar a forma como a página seria vista sem um recurso para ver se seu site está quebrado ou não) , e, em seguida, no arquivo functions.php do seu tema, coloque um código como o seguinte

 add_action( 'wp_print_scripts', 'my_deregister_javascript', 100 ); function my_deregister_javascript() { $deregistered_scripts=array('wc-add-to-cart', 'woocommerce', 'storefront-skip-link-focus-fix', 'wc-add-to-cart-variation', 'wc-cart-fragments', 'storefront-navigation', 'wc-single-product'); foreach ($deregistered_scripts as $key => $script) { wp_deregister_script( $script ); } } 

(é claro que você pode querer replace a matriz $deregistered_scripts com apenas as que você não estará usando)

Se o seu blog estiver em modo de desenvolvimento e você encontrar uma mensagem de erro depois disso, algum plug-in pode estar causando o problema. Tente adicionar um @ à linha 250 de /wp-includes/class.wp-scripts.php (funcionou para mim resolver um aviso de erro que woocommerce estava jogando)

 public function set_group( $handle, $recursion, $group = false ) { if ( @$this->registered[$handle]->args === 1 ) //"@" added $grp = 1; else $grp = (int) $this->get_data( $handle, 'group' ); if ( false !== $group && $grp > $group ) $grp = $group; return parent::set_group( $handle, $recursion, $grp ); } 

Editar : o código de cancelamento de registro foi adicionado deste artigo de blog por Justin Tadlock

Semelhante à primeira resposta, mas isso deve funcionar

 function remove_all_scripts() { foreach( wp_scripts()->registered as $script ) { wp_dequeue_script( $script ); wp_deregister_script( $script ); } } add_action('wp_enqueue_scripts', 'remove_all_scripts', PHP_INT_MAX); 

Você pode tentar fazer algo como isto:

 add_action( 'wp_enqueue_scripts', 'wpse8170_disable_all_scripts', 9999 ); function wpse8170_disable_all_scripts() { global $wp_scripts, $wp_styles; $wp_styles = new WP_Styles(); // reset all styles $wp_scripts = new WP_Scripts(); // reset all scripts } 

Mas preste atenção que este é um mau hábito de fazer o que você quer fazer e pode levar a resultados inesperados no futuro.