Concatenare e minimizzare le dipendenze per i file JavaScript accodati


8

Sto caricando un file JavaScript utilizzando wp_enqueue_scriptnel mio tema. Tuttavia, insieme ad esso, sto caricando anche diversi file jQuery, come dipendenze per lo script accodato (che è già stato concatenato e minimizzato da Grunt). Ecco il mio codice:

add_action('wp_enqueue_scripts', function() {
    wp_enqueue_script( 'customscripts', get_template_directory_uri() . '/assets/js/main.min.js', array('jquery', 'jquery-form', 'json2', 'jquery-ui-autocomplete'), NULL, true );
});

Per l'array delle dipendenze, come farei per concatenare e minimizzare quelle dipendenze jQuery? Sto cercando di caricare il mio sito il più velocemente possibile e meno file JS deve caricare, meglio è. Anche se fosse possibile farli caricare in modo asincrono (usando la asyncproprietà per i <script>tag) sarebbe un asso.

Preferirei farlo senza utilizzare un plug-in, ma utilizzerò un plug-in se necessario.

Grazie per qualsiasi aiuto :)


3
I file javascript di terze parti devono essere registrati / accodati dai plugin così come sono; non concatenato, modificato o con un altro nome. In questo modo, se ci sono più di un plugin / tema che usano gli stessi js di terze parti, Wordpress non caricherà diverse istanze dello stesso codice. Per trarre vantaggio da questa gestione e concatenazione, la concatenazione deve essere eseguita al volo in combinazione con un sistema di cache per evitare di concatenare i file per ogni visita. Penso che questo lavoro sia troppo per una risposta qui. Dai un'occhiata a W3 Total Cache; questo plugin concatena, minimizza, memorizza nella cache il risultato e carica file js asincroni.
cybmeta,

Proprio come dice @cybmeta, W3 Total Cache fa il lavoro, ma fai attenzione con i file js concatenati. Alcuni script non sono preparati per essere "insieme" negli stessi file. Ma rilassati anche, le modifiche della cache totale W3 sono tutte reversibili.
Rangel R. Morais,

ehi, grazie per aver risposto, W3 Total Cache funziona abbastanza bene per concatenare ecc., grazie per il suggerimento (e @cybmeta) :)
Tom Oakley,

ehi, grazie per aver risposto e mi dispiace di aver dimenticato di rispondere. W3 Total Cache funziona bene ora per questo, e la tua spiegazione del perché WordPress non lo fa ha perfettamente senso. Grazie!
Tom Oakley,

1
Questo plugin è anche bello se per qualche motivo non vuoi o non hai bisogno di W3 Total cache wordpress.org/plugins/autoptimize
NickFMC

Risposte:


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.