Home › Forum › Plugin e temi di WP › non funziona wp_dequeue_script per non caricare uno script
-
AutorePost
-
-
9 Giugno 2014 alle 16:33 #27436webby1973Partecipante
Ciao a tutti,
in un tema (Minblr di Themify) c’è uno script che non mi serve, ma non riesco a deregistrarlo per cui appare sempre nella sorgente.
Ho inserito questo dentro custom-functions.php che ho caricato dentro la cartella del tema stesso:
===================
<?php
function themify_remove_scripts () {
wp_dequeue_script( 'audio-player' );
wp_deregister_script('audio-player');
}
add_action('wp_enqueue_scripts','themify_remove_scripts');
?>===================
Qualcuno mi sa spiegare quali possono essere le cause per cui non funziona? Ho provato anche a scriverlo senza la riga
wp_deregister_script('audio-player');
e anche mettendo la riga “add_action” all’inizio, ma senza risultato.
In alternativa mi è stato suggerito di creare un tema figlio in cui copiare il file header.php togliendo a mano le parti che non mi servono, ma sinceramente preferisco prima capire perché il primo metodo non vada a buon fine.
grazie
Gabriele
-
9 Giugno 2014 alle 16:47 #111958SteveAglAmministratore del forum
Che lo script non venga inserito nell’header da un dnequeue ma sia codificato direttamente nel codice… in questo caso ovviamente il dequeue non funziona.
-
9 Giugno 2014 alle 16:47 #111959wollyAmministratore del forum
io lo metterei in functions.php per cominciare e prima verificherei che è stato fatto prima l’ enque.
PS: il tema child deve essere sempre fatto qundo si modifica qualche cosa altrimenti al primo aggiornamento perdi tutte le modifiche.
-
9 Giugno 2014 alle 16:54 #111960webby1973Partecipante
io lo metterei in functions.php per cominciare e prima verificherei che è stato fatto prima l’ enque.
PS: il tema child deve essere sempre fatto qundo si modifica qualche cosa altrimenti al primo aggiornamento perdi tutte le modifiche.
Il tema in questione prevede esplicitamente di usare un file chiamato “custom-functions.php” proprio per effettuare questo tipo di modifiche, senza per forza usare un tema child. Nel senso che volevo evitare di creare un tema child unicamente per questa minuscola modifica
Tu hai qualche idea di cosa possa impedire che funzioni? se attivo il debug può essere utile?
grazie
-
9 Giugno 2014 alle 16:57 #111961wollyAmministratore del forum
devi verificare quello che ti ho detto di vedere, il debug dubito che ti possa aiutare.
PS: io sono sempre per un child theme
-
9 Giugno 2014 alle 17:03 #111962webby1973Partecipante
Che lo script non venga inserito nell’header da un dnequeue ma sia codificato direttamente nel codice… in questo caso ovviamente il dequeue non funziona.
Lo script viene caricato correttamente da header.php che va a prenderlo da theme-functions.php (file richiamato a sua volta da functions.php).
Questa è parte dell’header:
<?php
/**
* Stylesheets and Javascript files are enqueued in theme-functions.php
*/
?>
<!-- wp_header -->
<?php wp_head(); ?>
<script type="text/javascript">
AudioPlayer.setup("<?php echo get_template_directory_uri(); ?>/player.swf", {
width: '90%',
transparentpagebg: 'yes'
});
</script>
E dentro theme-functions.php trovo la parte che devo togliere (copio-incollo solo quello che riguarda lo script):
add_action( 'wp_enqueue_scripts', 'themify_theme_enqueue_scripts', 11 );
function themify_theme_enqueue_scripts(){
//audio-player
wp_enqueue_script( 'audio-player', THEME_URI . '/js/audio-player.js', array('jquery'), false, false );
}
Per cui a me pare tutto a posto, ma sono ancora piuttosto ignorante
A proposito, ma a cosa serve quel numero "11" nella stringa add_action?
grazie -
9 Giugno 2014 alle 17:07 #111963TittiModeratore
Scusate ragazzi ma devo chiudere. La legge è uguale per tutti, e c’è scritto chiaramente che non possiamo fornire supporto per i temi commerciali, e non lo forniamo mai a nessuno.
Devi guardare la documentazione del tema, dove spiegano come fare: http://themify.me/docs/enqueue-scripts, e se non funziona devi rivolgerti al venditore.
Il numero che vedi è l’ordine di priorità .
-
-
AutorePost
- Devi essere connesso per rispondere a questo topic.