WordPress, il CMS più utilizzato al mondo, giunge alla versione 4.5. Analizziamo le novità ed i cambiamenti più importanti della nuova release, presto disponibile per il download.

Aggiornamento jQuery

jQuery, il noto framework Javascript, verrà aggiornato dalla versione 1.11.3 alla 1.12.2. L’aggiornamento del framework migliorerà notevolmente le performance grazie all’aggiornamento dell’engine dei selectors Sizzle. 

Numerosi sono i cambiamenti introdotti dalla versione 1.12.x di jQuery. Per maggiori informazioni è possibile fare riferimento al changelog jQuery originale.

Miglioramento performance per CSS e Script

Al fine di velocizzare il caricamento delle pagine di amministrazione, i CSS wp-admin.min.css e wp-admin-rtl.min.css non verranno più generati a prescindere. Questo permetterà di risparmiare circa 500 KB di dati a caricamento a fronte degli appena 72 KB di CSS dashboard.css. I due CSS saranno comunque generati per motivi di retrocompatibilità e combinati da load-styles.php.

Una caratteristica molto utile introdotta con la nuova versione è l’invio dell’header HTTP ETag da parte di load-style.php e load-script.php.  La versione specificata dal parametro sarà quella memorizzata in $wp_version. Questo migliorerà le performance in quanto i browser che invieranno nell’header HTTP il parametro HTTP_IF_NONE_MATCH quando faranno richiesta di download di una pagina, non scaricheranno nuovamente CSS e Javascript, a meno di un cambiamento del valore di $wp_version.

Ulteriore miglioramento delle performance è stato introdotto da un buf fixing. Come ben sapete su WordPress è possibile forzare il caricamento di script Javascript sia nell’header che nel footer. Per ogni file è possibile specificare una serie di dipendenze, ovvero altri script che vanno caricati prima per non causare errori. Per motivi di performance quasi sempre i file vengono caricati nel footer ma nelle precedenti versioni di WordPress le dipendenze venivano caricate sempre nell’header nonostante i file correlati venissero caricati nel footer . Questo problema è stato risolto velocizzando il caricamento della pagina.

Aggiunta la funzione wp_add_inline_script()

È stata aggiunta l’equivalente funzione per gli script di wp_add_inline_style(), che permetterà di aggiungere codice Javascript inline prima o dopo uno script registrato mediante la funzione wp_enqueue_scriptwp_register_script. Il prima o dopo verrà deciso da un opzionale terzo parametro. Di default la direttiva è da intendersi “dopo”.

Migliorate le performance per le immagini

La qualità di default delle immagini delle miniature scende da 90 a 82, aumentando dunque la velocità di caricamento per via della compressione e quindi un minor peso. Gli sviluppatori potranno comunque cambiare il valore di default utilizzando il filtro wp_editor_set_quality.

Ulteriore miglioramento in termini di performance è stato applicato per tutti i siti che fanno uso di ImageMagick. La dimensione delle immagini è stata ulteriormente ridotta eliminando metatag estranei mediante l’utilizzo del metodo WP_Image_Editor_Imagick::strip_image().

È stata introdotta la funzione wp_get_upload_dir() che permetterà agli sviluppatori di fare riferimento alla directory di upload senza passare da wp_upload_dir().

Eliminazione di edit-tags.php

Al fine di risolvere alcuni problemi di inconsistenza, la pagina edit-tags.php è stata rimossa in favore di term.php. Ciò significa che il valore della variabile $pagenow cambia da edit-tags.php a term.php, stessa cosa per quanto restituito da get_current_screen().

Ciò significa che se si vogliono caricare script Javascript e CSS sulla pagina di modifica dei tag (o comunque delle tassonomie), l’hook da utilizzare no sarà più load-edit-tags.php ma load-term.php. Tutto il resto rimane inalterato.

Conclusione

I cambiamenti introdotti con la versione 4.5 di WordPress sono per lo più legati alle performance, metrica non più sottovalutata sia per il miglioramento dell’esperienza dell’utente che per ambire ad un buon posizionamento sui motori di ricerca, i quali prendono sempre più seriamente l’esperienza di navigazione.

Per visualizzare la lista dei bug corretti ed altri cambiamenti introdotti con la nuova versione, vi invitiamo a leggere il changelog ufficiale.