Oggi stavo terminando un sito che ho abbellito con alcuni plugin per wordpress davvero spettacolari e, notanto che il caricamento si protraeva più del dovuto, ho iniziato a cercare di ottimizzare il codice per renderlo più leggero nel caricamento della home page.

Di default, ogni plugin che si installa su wordpress pone dei riferimenti a file css o javascript nell’head e, se si usano plugin che ne richiamano più di uno, il ritardo nel caricamento della pagina è considerevole perchè richiamato in ogni pagina. Come fare quindi per rendere il caricamento della home page del vostro sito (o blog) in wordpress più leggero?

La risposta è semplicissima: basta analizzare il codice dei plugin che abbiamo installato e modificare le righe in cui vengono richiamati i file css o js che siano nell’head. Ad esempio se vogliamo evitare il seguente css non venga caricato nella home perchè non necessario:

<link rel=“stylesheet” href=“http://simone.chiaromonte.com/wp-content/plugins/contact-form-7/stylesheet.css” type=“text/css” />

Basterà editare il file del plugin e inserire la seguente funzione prima dell’echo del file in questione:

if (is_page() ) {
echo″ <link rel=“stylesheet” href=“http://simone.chiaromonte.com/wp-content/plugins/contact-form-7/stylesheet.css” type=“text/css” />″;
}

Così quel file verrà caricato solo quando si accederà ad una pagina, dove ci sarà il modulo che richiede quel css. Quindi, dato che il modulo verrà generato in una pagina, possiamo evitare di farlo caricare in tutte le altre, compresa la home!

Se invece siamo degli ossessionati e vogliamo ottimizzare il caricamento del sito ancora di più, possiamo specificare in quale pagina si trova il modulo generato dal plugin che richiede il css facendolo caricare solo ed esclusivamente in quella pagina:

if (is_page(‘6’) ) {

echo″ <link rel=“stylesheet” href=“http://simone.chiaromonte.com/wp-content/plugins/contact-form-7/stylesheet.css” type=“text/css” />″;

}

Ricordiamoci però i cambiamenti che facciamo altrimenti le bestemmie si sprecheranno quando sposteremo il modulo in un’altra pagina e non ci verrà visualizzata! Spero che sia stato chiaro… non sono in grado di insegnare! …però ci provo! :-D