Cos’è la WP Cache
La cache ad oggetti di WP (object cache) è un meccanismo lato codice utilizzato per ridurre le hit sul database e migliorare i tempi di caricamento e le prestazioni del nostro sito. Sono definiti all’interno del file del core wp-includes/cache.php, e si possono utilizzare mediante un insieme predefinito di funzioni – simile a quelle messe a disposizione per i transient, da cui si distaccano per il fatto di essere un sistema di data storage anche per la cache, che pero’ non è disponibile su tutti gli hosting e soprattutto richiede un plugin di cache per poter funzionare.
Come funziona la WP Cache
Si tratta di una feature avanzata che pochi programmatori conoscono, e che ancora di meno usano in modo attivo: ma molti plugin di cache e di ottimizzazione, del resto, si basano su di esso. Di default, WP Object Cache non è una forma di dato persistente, e tende a durare esclusivamente per la brevissima durata della richiesta HTTP in esame. Non vengono, quindi, memorizzati per il futuro a meno che non si installi un apposito plugin (consigliato: W3 Total Cache). Parliamo di cache lato server, e non lato client ovviamente, per cui non facciamo confusione su questo fin dall’inizio.
Vantaggi WP Cache
Il principale vantaggio dell’uso della cache ad oggi è legato al miglioramento delle prestazioni dei tempi di caricamento del sito, qualora non si riesca ad intervenire diversamente.
Svantaggi WP Cache
Il principale svantaggio dell’uso della WP Object Cache è legato al fatto che deve essere incluso per forza in una personalizzazione del sito, quindi mettendo mano al codice.
Funzioni wp_cache
Le principali funzioni a disposizione per la Object cache sono:
wp_cache_add( $key, $data, $group, $expire )
Inserisce un valore ($data) in corrispondenza di un’etichetta ($key), un gruppo e per una certa data di scadenza.
wp_cache_set( $key, $data, $group, $expire )
Aggiorna un valore ($data) in corrispondenza di un’etichetta ($key), un gruppo e per una certa data di scadenza.
wp_cache_get( $key, $group ) wp_cache_get( $key, $group = '', $force = false, $found = null )
Preleva un valore ($data) in corrispondenza di un’etichetta ($key), un gruppo e per una certa data di scadenza.
Sono anche disponibili funzioni di cache replace, cache flush e cache delete.
Esempio base di WP Object Cache
Ammesso che $query sia una query MySQL molto lunga e dispendiosa, possiamo ottimizzarla per le volte successive salvandola in cache, ammesso che già non ci sia:
// prova a vedere se il risultato della query è già salvato in cache $result = wp_cache_get( 'my_result' ); // se non è stato cachato $result... if ( false === $result ) { $result = $wpdb->get_results( $query ); wp_cache_set( 'my_result', $result ); // salvalo in cache } // usa normalmente $result;
Plugin di object cache
I principali per sfruttare questa feature di WP sono i seguenti.
- Memcached Object Cache (se supportato dall’hosting),Â
- APC Object Cache (idem)
- Redis Object Cache (idem)
- W3 Total Cache (consigliato)
Le funzioni di WP Object Cache sono simili, ma non uguali, a quelle dei transient.
Quando usare la object cache
Le variabili in object cache sono ideali per memorizzare brevemente dati in forma persistente, impostandone un tempo di scadenza preciso e facile da controllare mediante plugin.
👇 Contenuti da non perdere 👇
- Cellulari 📱
- Domini Internet 🌍
- Internet 💻
- Lavoro 🔧
- Reti 💻
- WordPress 🤵
- 💬 Il nostro canale Telegram: iscriviti
- 🟡 Come scrivere bene per il web
- 🔴 Come impostare una sitemap XML su un sito WordPress
- 🟢 Come avviare la shell BASH in Windows 10