Il wp_enqueue_script
la funzione è la migliore soluzione per caricare i file JavaScript nel tuo sito WordPress. Se stai sviluppando un tema che utilizza librerie JavaScript o JavaScript, il wp_enqueue_script
la funzione è la strada da percorrere. Se non l'hai mai usato prima, però, possono essere confusioni ... quindi oggi daremo un'occhiata approfondita su come caricare correttamente gli script nel tuo tema o plugin usando la funzione di accodamento.
Alcuni aspetti delle applicazioni o delle tecniche utilizzate in questo tutorial sono cambiati da quando è stato originariamente pubblicato. Questo potrebbe rendere un po 'difficile da seguire. Ti consigliamo di guardare questi tutorial più recenti sullo stesso argomento:
Se provieni da uno sfondo HTML di base, probabilmente sei abituato a caricare semplicemente i file Javascript (incluso qualsiasi cosa, da jQuery a script di plug-in) direttamente nell'intestazione o nel piè di pagina del tuo documento. Va bene quando ti trovi in un ambiente autonomo come una pagina HTML di base ... ma una volta introdotta la miriade di altri script che potrebbero potenzialmente essere eseguiti su un'installazione di WordPress, diventa più complicato fare ciò che chiamerò "gestione della folla" con il tuo script.
Quindi, perché non caricare il tuo JavaScript nell'intestazione o nel piè di pagina? La risposta è piuttosto semplice: includendo il tuo JavaScript in questo modo, corri il rischio di avere conflitti con il tuo JavaScript durante l'installazione (pensa, più plugin cercano di caricare gli stessi script, o versioni diverse di quello script). Inoltre, il tuo JavaScript verrà caricato ogni pagina, anche se non ne hai bisogno. Ciò causerà un tempo di caricamento inutilmente più lungo per le tue pagine e può interferire con altri JavaScript, come da un plugin o all'interno del dashboard ... e questo è un No No nello sviluppo del WP.
Usando il wp_enqueue_script
funzione. Avrai un controllo migliore su come e quando carichi il tuo JavaScript. Puoi anche decidere se caricare nell'intestazione o nel piè di pagina.
Il wp_enqueue_script
la funzione è ciò che carica gli script nel tuo sito WordPress. Di solito lo userai nel tuo functions.php
file.
Il wp_enqueue_script
la funzione stessa è piuttosto semplice, quindi diamo un'occhiata alla sua struttura.
wp_enqueue_script ($ handle, $ src, $ deps, $ ver, $ in_footer);
$ maniglia
content_url
, bloginfo ( "template_url")
, o get_template_directory_uri ()
(consigliato dal riferimento alla funzione WordPress) per i temi e plugins_url
per i plugin. $ dipendenze
$ ver
$ in_footer
Come puoi vedere, tutti i parametri tranne $ maniglia
sono opzionali. A prima vista potrebbe sembrare strano. Soprattutto il $ scr
parametro. Come può WordPress localizzare lo script senza un URL?
La ragione di questo è che WordPress viene fornito con script integrati. Ad esempio, jQuery fa parte del core di WordPress e il team di sviluppo di WordPress ha reso molto semplice caricare questi script incorporati. Tutto quello che devi fare è passare l'handle dello script a wp_enqueue_script
.
Per l'elenco completo degli script WordPress incorporati e delle loro maniglie. Dai un'occhiata alla Guida alle funzioni di WordPress.
Ora che capisci le parti di wp_enqueue_script
. Diamo un'occhiata a come lo usi effettivamente con il tuo tema WordPress.
Esistono altre funzioni di WordPress che è necessario conoscere prima di poter avviare correttamente gli script di enqueing.
wp_register_script
wp_register_script
la funzione è utilizzata per registrare il tuo script con WordPress. Ciò significa che sarai in grado di usarlo wp_enqueue_script
per i tuoi script proprio come gli script integrati forniti con WordPresswp_register_script
è esattamente lo stesso del wp_enqueue_script
struttura, quindi non ho intenzione di rivederlo. È possibile fare riferimento alla sezione precedente se necessario.wp_register_script
proprio come faresti per wp_enqueue_script
. Quindi accodare lo script con wp_enqueue_script
passando la maniglia ad esso. wp_deregister_script
wp_deregister_script
rimuove uno script registrato.wp_deregister_script
wp_dequeue_script
rimuove uno script registrato.Il modo più semplice per caricare il tuo script è posizionare il wp_enqueue_script
dove mai lo vuoi sulla tua pagina.
Abbastanza facile, non solo elegante. Un modo migliore è usare il tuo file function.php per caricare i tuoi script. Per fare questo è necessario creare una funzione personalizzata. Quindi utilizzare add_action
per inizializzare la tua funzione.
load_my_scripts
MyScript
MyScript
load_my_scripts
Lo script appena caricato richiede l'esecuzione della versione corrente di jQuery, quindi deregistriamo la versione predefinita fornita con WordPress aggiungendo la nuova versione alla nostra funzione.
MyScript
OK, le buone pratiche per la codifica di WordPress dettano che dobbiamo verificare se esiste una funzione prima di eseguirla. Questo è compiuto in questo modo.
Questo controlla se la tua funzione esiste già. Se non lo fa, eseguirà la tua funzione.
Aggiungiamo questo al nostro load_my_scripts
funzione
Ora, se vai alla pagina di amministrazione, non vuoi caricare il tuo script. Potrebbe causare un conflitto e rompere la pagina di amministrazione. Una regola generale è che non si desidera caricare gli script personalizzati nella pagina di amministrazione. Gli script per i plugin sono una storia diversa. Lo esaminerò più tardi.
Verificheremo se la pagina è stata caricata non la pagina di amministrazione con! is_admin (). Se non lo è, i nostri script verranno caricati.
Ora la funzione è simile a questa.
Ecco qua. Un bel template da usare per te per accodare gli script
OK, ora che hai capito. Aggiungiamo uno script che verrà caricato solo sulla pagina di amministrazione del tuo plugin.
In realtà è molto semplice. Basta scrivere la tua funzione di script proprio come quella che abbiamo fatto nella sezione precedente del file del tuo plugin. Solo ora invece di usare 'init' in add_action, usa 'admin_init'.
Questo è tutto, ora il tuo script verrà caricato solo quando vai alla pagina di amministrazione del tuo plugin.
Spero che questo ti aiuterà a capire meglio Scripta gli script all'interno di WordPress, quindi ora puoi uscire e caricare alcuni script!
Se c'è qualcosa che non capisci o vorresti leggere. Raccomando di visitare il codice WordPress. Ecco una lista di altri link di codice rilevanti per te: