Tutorial WordPress affidabili, quando ne hai più bisogno.
Guida per principianti a WordPress
WPB Cup
25 Milioni+
Siti web che utilizzano i nostri plugin
16+
Anni di esperienza con WordPress
3000+
Tutorial WordPress di esperti

Come funziona realmente WordPress dietro le quinte (infografica)

Capire come funziona WordPress dietro le quinte può essere affascinante. Per la maggior parte degli utenti, sembra semplice: digita un URL e una pagina si carica velocemente. Tuttavia, in realtà c'è molto che accade in background.

Quando abbiamo iniziato a lavorare con WordPress diversi anni fa, abbiamo approfondito il funzionamento di tutto. E ora, siamo qui per condividere questa conoscenza con te in termini semplici in modo che tu possa capire di più su WordPress.

In questa guida, ti illustreremo il funzionamento interno di WordPress. Abbiamo anche creato un'infografica facile da seguire per rendere le cose più chiare.

Come funziona WordPress dietro le quinte

Cos'è WordPress?

WordPress è un costruttore di siti web e un sistema di gestione dei contenuti. È un software open-source che chiunque può utilizzare per creare qualsiasi tipo di sito web.

È iniziato come una piattaforma di blogging nel 2003, ma si è presto trasformato in un CMS e successivamente in una piattaforma completa per la creazione di siti web. Oggi, alimenta più del 43% di tutti i siti web su Internet.

Per saperne di più sulla sua evoluzione, storia, pro e contro, consulta la nostra guida completa su cos'è WordPress e quanto costa costruire un sito WordPress.

Perché dovresti imparare come funziona WordPress?

WordPress è un software open-source, il che significa che chiunque può studiarne il codice e scrivere le proprie app (plugin) e modelli (temi) per esso.

Nel corso degli anni, abbiamo visto innumerevoli principianti diventare rapidamente utenti avanzati semplicemente imparando come funziona WordPress come software.

Ti insegnerà anche a migliorare le prestazioni di WordPress e a scrivere codice migliore per i tuoi progetti.

Questa guida ti accompagnerà attraverso l'intero processo passo dopo passo. Inizieremo quando un utente richiede una pagina e finiremo quando quella pagina sarà completamente caricata.

Pronto? Iniziamo.

Fai clic per visualizzare l'infografica di WordPress dietro le quinte

Puoi anche seguire il nostro tutorial scritto qui sotto per maggiori dettagli.

1. Carica il file wp-config.php

Il wp-config.php è il file di configurazione di WordPress. Imposta le variabili globali per un sito WordPress e contiene le informazioni del tuo database WordPress. Per ovvie ragioni, questo è il primo file che WordPress carica.

Scopri di più sul file wp-config.php e su come modificarlo.

2. Imposta le costanti predefinite

Dopo aver caricato il file wp-config.php, WordPress passerà a impostare le costanti predefinite.

Ciò include informazioni come la posizione di caricamento predefinita dei media di WordPress, le dimensioni massime dei file e altre costanti predefinite impostate nel file wp-config.php.

3. Carica il file advanced-cache.php

Se un file advanced-cache.php esiste sul tuo sito, WordPress lo caricherà successivamente.

Questo file funge da file drop-in ed è utilizzato da diversi plugin popolari, in particolare dai plugin di caching per WordPress. Se il tuo sito utilizza questo file, vedrai una nuova voce nella schermata Plugin chiamata 'Drop-ins'.

file advanced-cache.php che appare come drop-in

4. Carica il file wp-content/db.php

WordPress consente agli sviluppatori di creare i propri livelli di astrazione del database e caricarli in un file db.php posizionato all'interno della cartella wp-content. I plugin di caching di WordPress lo utilizzano comunemente per migliorare le prestazioni del database.

Se il tuo sito web ha questo file presente, WordPress lo caricherà.

5. Connetti MySQL e Seleziona Database

WordPress ora ha abbastanza informazioni per procedere ulteriormente. Si connetterà al server MySQL e selezionerà il database.

Se WordPress non riesce a connettersi al database, vedrai l'errore "Errore di connessione al database" e WordPress si interromperà qui.

Se tutto funziona correttamente, passerà ai passaggi successivi.

6. Carica il file object-cache.php o wp-includes/cache.php

WordPress cercherà ora il file object-cache.php. Se non esiste, WordPress passerà a caricare il file wp-includes/cache.php.

7. Carica il file wp-content/sunrise.php

Se si tratta di una rete multisite, WordPress cercherà il file sunrise.php se esiste nella cartella wp-content.

8. Carica la libreria di localizzazione

WordPress caricherà ora la libreria l10n.php nella cartella wp-includes. Questo file carica il sistema di localizzazione di WordPress, carica le traduzioni, imposta le impostazioni locali, ecc.

Puoi consultare la nostra guida su come usare WordPress in altre lingue.

9. Carica i plugin multisite

Se si tratta di una rete multisite, WordPress caricherà i plugin multisite. Scopri di più su come funzionano i plugin nelle reti WordPress multisite.

Plugin attivati a livello di rete

10. Esegui l'azione 'muplugins_loaded'

L'azione muplugins_loaded viene ora eseguita da WordPress. Questa azione è disponibile solo per i plugin attivati a livello di rete su un multisite WordPress.

11. Carica i plugin attivi

WordPress caricherà ora tutti i plugin attivi sul sito. Lo fa cercando nella voce active_plugins nella tabella delle opzioni del tuo database WordPress. Questo consente a WordPress di ignorare i plugin installati sul tuo sito ma non attivati.

12. Carica il file pluggable.php

Il file pluggable.php contiene funzioni che possono essere ridefinite dai plugin di WordPress.

WordPress verificherà ora se un altro plugin ha già definito le funzioni all'interno di questo file. Altrimenti, definirà esse stesse tali funzioni.

13. Esegui l'azione ‘plugins_loaded’

WordPress eseguirà ora l'azione ‘plugins_loaded’.

Permette agli sviluppatori di agganciare le proprie funzioni per eseguirle dopo che tutti i plugin attivi sono stati caricati.

14. Carica le Regole di Rewrite

WordPress caricherà ora le regole di rewrite. Queste regole di rewrite aiutano WordPress a utilizzare URL SEO-friendly.

15. Istanzia $wp_query, $wp_rewrite, $wp

A questo punto, WordPress carica i seguenti oggetti:

$wp_query: L'istanza globale che contiene la classe WP_Query. Indica a WordPress quale contenuto è richiesto in un tipico formato di query di WordPress.

$wp_rewrite: L'istanza globale che contiene la tua classe WP_Rewrite. Contiene le tue regole e funzioni di rewrite, che indicano a WordPress quale URL utilizzare per visualizzare il contenuto richiesto.

$wp: L'istanza globale della classe WP contiene funzioni che analizzeranno la tua richiesta ed eseguiranno la query principale.

16. Esegui l'azione ‘setup_theme’

WordPress passerà ora all'esecuzione dell'azione ‘setup_theme’. Questa azione viene eseguita prima che il tuo tema WordPress venga caricato.

17. Carica il file functions.php del Child Theme

Il file functions.php agisce come un plugin e viene utilizzato nei temi di WordPress per aggiungere funzionalità specifiche del tema al tuo sito web. Se stai utilizzando un tema figlio, WordPress caricherà ora il file functions.php del tuo tema figlio.

Altrimenti, procederà a caricare il file functions.php del tuo tema attivo corrente.

18. Carica il file functions.php del tema padre

Se stai usando un tema figlio, WordPress caricherà ora il file functions.php del tuo tema padre.

19. Esegui l'azione 'after_setup_theme'

Questa azione viene eseguita dopo che WordPress ha impostato il tema e caricato le funzioni del tema. È la prima azione disponibile per i temi.

20. Imposta l'oggetto utente corrente

A questo punto, WordPress carica l'oggetto utente corrente. Ciò consente a WordPress di gestire la richiesta in conformità con il ruolo e le capacità dell'utente.

21. Esegui l'azione 'init'

WordPress ha finora caricato tutte le informazioni cruciali di cui ha bisogno. Ora, attiva l'azione 'init'. Questa azione registra anche i blocchi disponibili nel core o forniti da eventuali plugin installati su quel sito web.

Questa azione consente agli sviluppatori di aggiungere codice che deve essere eseguito dopo che WordPress ha caricato tutte le informazioni menzionate in precedenza.

22. Esegui l'azione 'widget_init'

L'azione widget_init consente agli sviluppatori di registrare widget ed eseguire il codice di cui hanno bisogno in questo momento.

23. Esegui wp()

WordPress ora chiama la funzione wp(), che si trova nel file wp-includes/functions.php. Imposta le variabili globali della query di WordPress $wp, $wp_query, $wp_the_query, e quindi chiama $wp->main.

24. Analizza la richiesta

Ora WordPress ha tutte le informazioni necessarie per analizzare la richiesta dell'utente. Inizia controllando le regole di riscrittura per far corrispondere la richiesta dell'utente.

Esegue quindi i filtri delle variabili di query, richiede un hook di azione ed invia una richiesta di intestazione.

25. Esegui la query

Se nessun contenuto corrisponde alla query, WordPress imposterà la variabile is_404.

Altrimenti, WordPress procederà al caricamento delle variabili di query.

Eseguirà quindi WP_Query->get_posts().

Successivamente, esegue l'azione DO_ACTION_REF_ARRAY 'pre_get_posts' con l'oggetto WP_Query.

WordPress eseguirà ora apply_filters per ripulire la query ed eseguire alcuni controlli finali.

Ora, recupera i post dal database e applica i filtri posts_results e the_posts.

La parte della query termina con WordPress che restituisce i post.

26. Esegui Azione 'template_redirect'

WordPress eseguirà ora l'azione template_redirect. Questo hook viene eseguito appena prima che WordPress determini quale pagina del modello caricare.

27. Carica Modello Feed

Se il contenuto richiesto è un feed RSS, allora WordPress carica il modello del feed.

28. Carica Modello

WordPress cercherà ora il file del modello in base alla gerarchia dei modelli di WordPress. Quindi carica il modello, che di solito contiene un loop di WordPress.

29. Esegui l'azione ‘shutdown’

Poco prima di terminare tutta l'esecuzione di PHP, WordPress attiva l'ultima azione chiamata shutdown.

WordPress smette di funzionare qui. Ha eseguito il codice e generato la pagina web richiesta dall'utente.

Ora, il tuo server di web hosting risponde alla richiesta di un utente inviandogli la pagina web generata da WordPress.

Questa pagina contiene codice HTML, CSS e Javascript, che indica al browser dell'utente come visualizzarla sullo schermo.

Fantastico, vero? Tutte queste cose accadono in pochi millisecondi. Se stai utilizzando uno di questi migliori servizi di hosting WordPress, la tua pagina si caricherà idealmente in un paio di secondi.

Speriamo che questo articolo ti abbia aiutato a capire come funziona WordPress dietro le quinte. Potresti anche voler consultare i nostri consigli su come proteggere l'area di amministrazione di WordPress o dare un'occhiata a questa guida con utili consigli, trucchi e hack di WordPress.

Se ti è piaciuto questo articolo, iscriviti al nostro canale YouTube per tutorial video su WordPress. Puoi anche trovarci su Twitter e Facebook.

Dichiarazione: Il nostro contenuto è supportato dai lettori. Ciò significa che se fai clic su alcuni dei nostri link, potremmo guadagnare una commissione. Vedi come è finanziato WPBeginner, perché è importante e come puoi supportarci. Ecco il nostro processo editoriale.

Il Toolkit WordPress Definitivo

Ottieni l'accesso GRATUITO al nostro toolkit - una raccolta di prodotti e risorse relative a WordPress che ogni professionista dovrebbe avere!

Interazioni del lettore

37 CommentsLeave a Reply

  1. Non avevo mai pensato a come funzionasse l'intero processo, e questo è il primo articolo che mi è capitato di leggere che spiega questi dettagli. È un po' più tecnico e non a tutti potrebbe piacere, ma apprezzo che tu abbia creato questa infografica perché non ho mai visto niente di simile prima. È stato molto interessante per me vedere l'intero processo passo dopo passo.

  2. Questa analisi è incredibilmente illuminante!
    La spiegazione passo-passo del processo di caricamento è stata particolarmente preziosa e la sezione su come WordPress carica ed esegue vari file (come wp-config.php, advanced-cache.php e object-cache.php) mi ha davvero aiutato a capire perché determinate ottimizzazioni funzionano nel modo in cui lo fanno.

  3. È davvero molto interessante vedere come le pagine si sono caricate dietro le quinte e cosa succede quando un utente effettua una richiesta.
    Hai spiegato molto bene con l'aiuto di infografiche.
    Questo ci fa pensare che così tante cose accadono in un batter d'occhio.
    Questo è così potente e così potenziante dove la tecnologia ci ha portato.
    Apprezzo molto questo articolo per aver descritto magnificamente l'aspetto dietro le quinte di un sito web.

  4. È la prima volta che vedo un riassunto così completo di tutto ciò che accade in background prima che una pagina venga generata. Devo ammettere che non ho trovato informazioni così dettagliate altrove. Quando considero quanti processi devono verificarsi prima che una pagina si carichi e che WordPress e il server gestiscano tutto in un secondo, è fantastico ciò che i server e i sistemi di oggi possono fare.

    • Non potrei essere più d'accordo. Questa infografica è una risorsa fantastica per chiunque voglia capire la magia dietro WordPress. Evidenzia davvero il complesso macchinario che trasforma codice e dati nelle pagine web dinamiche che vediamo ogni giorno.

  5. hm – mi manca un po' il passaggio 0

    quindi questa è un'ipotesi corretta`?

    un URL arriva sul mio webserver ospitato
    richiedendo, diciamo, la mia home page

    quindi il webserver avvia il passaggio (1)?
    che poi viene eseguito fino al passaggio (24)
    dove WP analizza l'URL in arrivo per capire i passaggi successivi?

    • Il passaggio 0 può certamente essere un URL che rimanda al sito, intorno al passaggio 15 si considererebbe la pagina specifica.

      Amministratore

  6. E index.php nella root?

    Non capisco... Ci sono guide che presentano una sequenza di inizializzazione di WordPress completamente diversa.

  7. Ciao wpbeginner.
    Ho notato che nella tua sequenza, hai menzionato che wp fa questo e poi quello. Fisicamente, dov'è l'istanza di wp()? Sul server? Succede tra una richiesta di caricamento iniziale della pagina post quando uso il browser di Google e il caricamento finale della dashboard di wp dopo il login?

    • Potresti voler dare un'altra occhiata all'infografica per capire il caricamento e come funziona.

      Amministratore

  8. Sono un programmatore. Mi sto interessando sempre di più al web design, tuttavia, non posso fare a meno di voler sapere cosa succede dietro le quinte. Il tuo articolo mi ha fornito una base per iniziare a costruire con sicurezza pagine web.

  9. Questo è brillante. Ho riscontrato diversi problemi con plugin vecchi e scaduti, aggiornamento di PHP, ecc., e un virus (probabilmente a causa degli elementi precedenti). Quindi ora è tutto bloccato e ripulito, ma volevo capire meglio la sequenza degli eventi poiché guardare un singolo file PHP è come cercare di leggere una ciotola di spaghetti, dato che non capivo la sequenza delle attività. Quindi assolutamente fantastico. Adoro questo.

    Grazie

  10. Voglio sapere davvero cosa fa WordPress, come posso creare e condividere post tramite WordPress? Cosa fa per me oltre a creare un sito?

  11. Interessante ma non proprio una definizione di come funziona Wordpress. Questo descrive cosa fa, non come lo fa. Sarebbe utile sapere anche come fa le cose oltre a cosa fa. Ad esempio, come fa a sapere quale tema caricare? Senza il come, tutto quanto sopra è molto di alto livello.

  12. 17. Carica il file functions.php del Child Theme

    Il file functions.php agisce come un plugin ed è utilizzato nei temi di WordPress per aggiungere funzionalità specifiche del tema al tuo sito web. Se stai usando un tema figlio, allora WordPress caricherà il file functions.php del tuo tema figlio.

    Altrimenti, procederà a caricare il file functions.php del tuo tema attivo corrente.

    18. Carica il file functions.php del tema padre

    [ Se stai usando un tema figlio ], allora WordPress caricherà il file functions.php del tuo tema padre.

    controlla il testo tra parentesi e abbina tutta la dicitura qui verrà sostituita [ se stai usando un tema padre ].

    Grazie.

    • Amir, penso che l'OP stia cercando di dire che se c'è un tema figlio, allora ovviamente ci sarà un functions.php padre e figlio, e WordPress caricherà prima il functions.php del tema figlio prima di caricare quello del padre. Altrimenti, caricherà direttamente il functions.php del padre.

  13. E la gente si chiede perché i siti WordPress sono lenti. Fa tutto questo al momento dell'esecuzione per ogni singola visualizzazione di pagina!

  14. Saresti disposto a offrirlo come poster stampato? Non so se genererebbe molto interesse o ti farebbe guadagnare, ma dato che è una grafica così bella potrebbe diventare un bel soprammobile da parete per l'ufficio.

  15. Grazie per questo articolo. Volevo sapere da tempo
    i diversi passaggi per il caricamento.

    Cos'è un livello di astrazione del database e come configurarlo?

Lascia un commento

Grazie per aver scelto di lasciare un commento. Tieni presente che tutti i commenti sono moderati secondo la nostra politica sui commenti, e il tuo indirizzo email NON verrà pubblicato. Si prega di NON utilizzare parole chiave nel campo del nome. Avviamo una conversazione personale e significativa.