Vai al contenuto principale

Come utilizzare non persistenti cache di WordPress

Divi: il tema WordPress più semplice da usare

Divi: il miglior tema WordPress di tutti i tempi!

più Download di 701.000, Divi è il tema WordPress più popolare al mondo. È completo, facile da usare e viene fornito con oltre i modelli gratuiti 62. [Consigliato]

Esistono diversi modi per rendere più efficiente il tuo sito: plug-in specializzati ti consentono di memorizzare nella cache pagine per contenuto HTML statico, altri ti consentono di memorizzare nella cache tutte le query e gli oggetti dati SQL, e infine alcuni consentono di ridurre al minimo i file JavaScript e CSS e persino le soluzioni lato server.

mise-en-nascondere-on-wordpress

Ma anche se stai utilizzando questi plugin, l'utilizzo di metodi di memorizzazione nella cache interna per gli oggetti di database e i risultati sarà una buona pratica di sviluppo, in quanto il tuo plugin non dipende dalla soluzione dispone l'utente finale. Il tuo plugin dovrebbe essere veloce da solo e non dovrebbe fare affidamento su altri plugin per fare il lavoro sporco. E se pensi di dover scrivere il tuo codice per la gestione della cache, ti sbagli. WordPress viene fornito con tutto il necessario per implementare rapidamente varie memorizzazione nella cache dei dati. Devi solo identificare le parti del codice che trarranno vantaggio dall'ottimizzazione e scegliere un tipo di memorizzazione nella cache di conseguenza.

WordPress implementa due diversi metodi di memorizzazione nella cache:

non persistente

I dati rimangono nella cache durante il caricamento della pagina. (WordPress lo utilizza per memorizzare nella cache la maggior parte dei risultati delle query dal database.)

Persistente

Crea facilmente il tuo sito Web con Elementor

Elementor ti consente di creare facilmente qualsiasi design di sito Web con un aspetto professionale. Smetti di pagare caro per quello che puoi fare da solo. [Free]

Ciò dipende da come funziona il database e i dati memorizzati nella cache possono scadere automaticamente dopo un certo periodo di tempo. (WordPress lo utilizza per memorizzare nella cache feed RSS, aggiornamenti, ecc.).

In questo tutorial considereremo solo la cache non persistente.

Come impostare la cache non persistente "Non persistente"

Quando si utilizzano funzioni come " get_posts () "O" get_post_meta () WordPress verifica prima se i dati di cui hai bisogno sono memorizzati nella cache. In tal caso, riceverai i dati dalla cache; in caso contrario, verrà eseguita una query sul database per ottenere questi dati. Una volta recuperati, i dati verranno anche memorizzati nella cache. Si consiglia una cache non persistente per i risultati del database che potrebbero essere riutilizzati durante la creazione di una pagina.

Il codice cache interno non persistente di WordPress si trova nel file " cache.php "Nella directory" wp-includes ", ed è gestito da" WP_Object_Cache ". Dobbiamo utilizzare due funzioni di base: " wp_cache_set () "E" wp_cache_get () Contemporaneamente alle funzioni aggiuntive " wp_cache_add () "," wp_cache_replace () "," wp_cache_flush () "E" wp_cache_delete () ". L'archiviazione memorizzata nella cache è organizzata in gruppi, ciascuna delle quali necessita della sua chiave univoca. Per evitare di mescolare i dati di WordPress predefiniti, è consigliabile utilizzare nomi univoci.

Stai cercando i migliori temi e plugin per WordPress?

Scarica i migliori plugin e temi WordPress su Envato e crea facilmente il tuo sito web. Già più di 49.720.000 download. [ESCLUSIVO]

Esempi

Per questo esempio, creeremo una funzione denominata "d4p_get_all_post_meta ()", che recupera tutti i metadati associati a un articolo. Questa prima versione non include la memorizzazione nella cache.

function d4p_get_all_post_meta($post_id) {
    global $wpdb;

    $data = array();
    $raw = $wpdb->get_results( "SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id = $post_id", ARRAY_A );

    foreach ( $raw as $row ) {
        $data[$row['meta_key']][] = $row['meta_value'];
    }

    return $data;
}

Ogni volta che si chiama questa funzione per lo stesso articolo, verrà eseguita una query SQL. Ecco la funzione modificata che utilizza la cache di WordPress non persistente:

function d4p_get_all_post_meta($post_id) {
    global $wpdb;

    if ( ! $data = wp_cache_get( $post_id, 'd4p_post_meta' ) ) {
        $data = array();
        $raw = $wpdb->get_results( "SELECT meta_key, meta_value FROM $wpdb->postmeta WHERE post_id = $post_id", ARRAY_A );

        foreach ( $raw as $row ) {
            $data[$row['meta_key']][] = $row['meta_value'];
        }

        wp_cache_add( $post_id, $data, 'd4p_post_meta' );
    }

    return $data;
}

Qui usiamo un gruppo di cache chiamato " d4p_post_meta ", E" post_id "che è la chiave. Con questa funzione controlleremo se abbiamo bisogno di tutti i dati in memoria. Altrimenti, eseguiremo il codice normale per ottenere alcuni dati e poi lo aggiungeremo alla cache nella riga 13. Quindi, se chiami questa funzione più di una volta, solo il primo eseguirà una query SQL. Tutte le altre chiamate recupereranno i dati dalla cache. Qui usiamo la funzione " wp_cache_add ", Quindi se la combinazione" gruppo di chiavi "esiste già, non verrà sostituita. Confronta con " wp_cache_set Che sostituirà sempre un valore esistente senza controllo.

Come puoi vedere, abbiamo apportato solo una piccola modifica al codice esistente, ma potenzialmente abbiamo salvato molte chiamate al database che potenzialmente hanno reso il caricamento più veloce.

Note importanti

La cache non persistente è disponibile solo durante il caricamento della pagina corrente; una volta che i prossimi caricamento della pagina, sarà di nuovo vuota.

La dimensione di archiviazione è limitata dalla memoria totale disponibile su PHP allocata dal server. Non archiviare una serie di dati di grandi dimensioni o potresti ricevere il messaggio "Memoria esaurita".

L'uso di questo tipo di cache ha senso solo per operazioni ripetute più di una volta durante la creazione di una pagina.

Crea facilmente il tuo negozio online

Scarica gratuitamente WooCommerce, i migliori plug-in di e-commerce per vendere i tuoi prodotti fisici e digitali su WordPress. [Consigliato]

Funziona con WordPress dal rilascio 2.0.

Questo è tutto per questo tutorial. Spero che ti permetta di memorizzare meglio nella cache il tuo blog.

Questo articolo contiene i commenti 0

Lascia un commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre indesiderati. Ulteriori informazioni su come vengono utilizzati i dati dei commenti.

Torna in alto
5 azioni
quota2
Tweet
Enregistrer3