Questo articolo è la continuazione della guida Come aggiungere css e javascript in WordPress. Si consiglia di visionare la prima parte prima di proseguire con la lettura.
Una volta che si è preso confidenza con le funzioni per l’aggiunta dei file esterni, la loro rimozione risulterà un processo estremamente semplice. Esistono infatti delle funzioni complementari di WordPress specificamente per questa finalità, che sono:
Ancora una volta, per i Javascript:
e per i fogli di stile:
Avendo chiara la differenza tra registrazione ed enqueuing sarà più facile comprendere quanto utilizzare solo wp_dequeue_script() e wp_dequeue_style() per eliminare i file dalla coda e quando invece rimuovere anche la registrazione con wp_deregister_script() e wp_deregister_style().
Nota: La sola deregistrazione non rimuoverà lo script se questo è stato già messo in coda. E’ possibile infatti usare wp_deregister_script($handle), seguito da un nuovo wp_register_script($handle) per cambiare la url o altre informazioni riguardanti uno script già in coda, senza con cambiare l’ordine con cui è stato aggiunto a questa. Utile ad esempio quando un tema genitore non ha specificato dipendenze ritenute necessarie nel tema figlio.
Quando usare le funzioni
In quali casi è necessario utilizzare queste funzioni? Non sarebbe più semplice rimuovere direttamente la registrazione e la messa in coda? In primo luogo possiamo utilizzarle in modo condizionale, per rimuovere file che non ci servono in determinate circostanze. In secondo luogo ritornano estremamente utili quando si lavora con tema figlio, che include automaticamente i file esterni del genitore, senza averne necessariamente bisogno. In questo caso editare direttamente il codice del tema genitore rimuovendo il codice per l’aggiunta dei file non sarebbe buona pratica, considerando anche che i file verrebbero probabilmente aggiunti di nuovo con l’aggiornamento seguente del tema. Capita spesso di ricorrere a temi WordPress, specialmente premium, che sono nella loro versione di base ricchi di risorse esterne, utilizzate magari per aggiungere effetti grafici che impressionano il potenziale acquirente, ma che diventano ridondanti dove sul sito finale sui cui viene installato non sono necessari (magari per richieste specifiche del committente). In altri casi potrebbero esserci librerie javascript aggiunte in copia multipla da un plugin e da un tema, da eliminare per evitare tempi di caricamento inutili. Più in generale si possono rimuovere file esterni laddove generano conflitti. Come ultima accortezza, bisogna tenere conto che mentre la rimozione dei fogli di stile comporta risultati più immediati e visibili (cioè la perdita della formattazione grafica delle parti del sito a cui si applicano), l’eliminazione di file Javascript potrebbe avere conseguenze non ravvisabili nell’immediato, ma più gravi, specialmente se altri script vi dipendono. Togliere file javascript da un tema che non si è realizzato personalmente o di cui non si conosce accuratamente la struttura può portare a risultati imprevisti. Utilizzare gli strumenti di sviluppo dei browser per controllare la console di javascript è un buon modo per fare una prima valutazione di eventuali errori generati dalla rimozione di un file di questo tipo. In generale, in questi casi, è sempre opportuno rimuovere solamente file di cui si conosce la funzione e fare quanti più test possibili per accertarsi che la loro assenza non risulti in conseguenze impreviste.