Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Coppa WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Come funziona WordPress dietro le quinte (infografica)

Capire come funziona WordPress dietro le quinte può essere affascinante. Per la maggior parte degli utenti, sembra semplice: si digita un URL e la pagina viene caricata rapidamente. In realtà, però, ci sono molte cose che accadono sullo sfondo.

Quando abbiamo iniziato a lavorare con WordPress, diversi anni fa, abbiamo fatto un’immersione profonda nell’elaborazione in corso. Ora siamo qui per condividere con voi queste conoscenze in termini semplici, in modo che possiate capire meglio chi siamo.

In questa guida vi illustreremo l’elaborazione in corso di WordPress. Abbiamo anche creato un’infografica facile da seguire per rendere le cose più chiare.

How WordPress Works Behind the Scenes

Che cos’è WordPress?

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

Nata come piattaforma di blog nel 2003, si è presto trasformata in un CMS e poi in una vera e propria piattaforma di costruzione di siti web. Oggi alimenta più del 43% di tutti i siti web presenti su Internet.

Per approfondire la sua evoluzione, la sua storia e i suoi pro e contro, consultate la nostra guida completa su cos’è WordPress e quanto costa costruire un sito in WordPress.

Perché dovreste imparare come funziona WordPress?

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

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

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

Questa guida illustra l’intero processo passo dopo passo. Inizieremo quando un utente richiede una pagina e termineremo quando la pagina è completamente caricata.

Pronti? Iniziamo.

Click to View the Behind the Scenes WordPress Infographic

Per maggiori dettagli, potete anche seguire la nostra guida scritta qui sotto.

1. Caricare il file wp-config.php

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

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

2. Impostazione delle costanti predefinite

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

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

3. Caricare il file advanced-cache.php

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

Questo file funge da drop-in ed è utilizzato da diversi plugin popolari, in particolare da quelli per la cache di WordPress. Se il vostro sito utilizza questo file, vedrete un nuovo elemento nella schermata dei plugin chiamato “Drop-in”.

advanced-cache.php file appearing as drop-in

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

WordPress consente agli sviluppatori di creare i propri livelli di astrazione del database e di caricarli in un file db.php collocato all’interno della cartella wp-content. I plugin di WordPress per la cache lo usano comunemente per migliorare le prestazioni del database.

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

5. Collegare MySQL e selezionare il database

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

Se WordPress non riesce a connettersi al database, verrà visualizzato l’errore “Error establishing database connection” (Errore nello stabilire la connessione al database) e WordPress si chiuderà proprio qui.

Se tutto funziona bene, si passa alle fasi successive.

6. Caricare 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. Caricare il file wp-content/sunrise.php

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

8. Caricare 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 i locali, ecc.

Potete consultare la nostra guida su come utilizzare WordPress in altre lingue.

9. Caricare i plugin di Multisite

Se si tratta di un network o di una rete multisito, WordPress caricherà i plugin multisito. Approfondisci come funzionano i plugin sulle reti multisito di WordPress.

Network activated plugins

10. Eseguire l’azione ‘muplugins_loaded’

L’azione muplugins_loaded è ora eseguita da WordPress. Questa azione è disponibile solo per i plugin attivati in rete su un multisito WordPress.

11. Carica i plugin attivi

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

12. Caricare il file pluggable.php

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

WordPress ora vedrà se un altro plugin ha già definito le funzioni all’interno di questo file. In caso contrario, definirà le funzioni stesse.

13. Eseguire l’azione ‘plugins_loaded’

WordPress eseguirà ora l’azione “plugins_loaded”.

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

14. Regole di riscrittura del carico

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

15. Istanziare $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 il contenuto richiesto in un tipico formato di query di WordPress.

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

$wp: L’istanza globale della classe WP contiene le funzioni che analizzano la richiesta ed eseguono la query principale.

16. Eseguire l’azione “setup_theme”.

WordPress passerà ora a eseguire l’azione “setup_theme”. Questa azione viene eseguita prima che il tema di WordPress venga caricato.

17. Caricare il file functions.php del tema figlio

Il file functions.php agisce come un plugin ed è utilizzato nei temi di WordPress per aggiungere funzioni specifiche al sito web. Se si utilizza un tema figlio, WordPress caricherà il file functions.php del tema figlio.

Altrimenti, verrà caricato il file functions.php del tema attivo corrente.

18. Caricare il file functions.php del tema principale

Se si utilizza un tema figlio, WordPress caricherà il file functions.php del tema padre.

19. Eseguire l’azione “dopo_setup_theme”.

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

20. Impostazione dell’oggetto Utente corrente

A questo punto, WordPress carica l’oggetto utente corrente. Ciò consente a WordPress di gestire la richiesta in base al ruolo e alle capacità dell’utente.

21. Eseguire l’azione “init

WordPress ha finora caricato tutte le informazioni cruciali di cui ha bisogno. Ora lancia l’azione “init”. Questa azione registra anche i blocchi disponibili nel nucleo o forniti da eventuali plugin installati sul sito web.

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

22. Eseguire l’azione ‘widget_init’

L’azione widget_init consente agli sviluppatori di registrare i widget e di eseguire il codice necessario in questo momento.

23. Eseguire wp()

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

24. Richiesta di analisi

Ora WordPress ha tutte le informazioni necessarie per analizzare la richiesta dell’utente. Comincia a controllare le regole di riscrittura per soddisfare la richiesta dell’utente.

Quindi esegue i filtri per le variabili della query, richiede un action hook e invia una richiesta di header.

25. Esegui query

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

In caso contrario, WordPress procederà al caricamento delle variabili della query.

Verrà quindi eseguito WP_Query->get_posts().

Poi, lancia 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 la restituzione dei post da parte di WordPress.

26. Eseguire l’azione ‘template_redirect’

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

27. Caricare il modello di alimentazione

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

28. Modello di carico

WordPress cercherà ora il file del template in base alla gerarchia dei template di WordPress. Carica quindi il modello, che di solito contiene un ciclo di WordPress.

29. Eseguire l’azione “spegnimento”.

Poco prima di terminare l’esecuzione di PHP, WordPress avvia l’ultima azione chiamata shutdown.

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

A questo punto, il server di hosting web risponde alla richiesta dell’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.

Incredibile, vero? Tutte queste cose avvengono in pochi millisecondi. Se utilizzate uno di questi migliori servizi di hosting WordPress, la vostra pagina verrà caricata idealmente in un paio di secondi.

Speriamo che questo articolo vi abbia aiutato a capire come funziona WordPress dietro le quinte. Potreste anche voler vedere i nostri suggerimenti sulla protezione dell’area di amministrazione di WordPress o dare un’occhiata a questa guida con suggerimenti, trucchi e hack pratici per WordPress.

Se questo articolo vi è piaciuto, iscrivetevi al nostro canale YouTube per le esercitazioni video su WordPress. Potete trovarci anche su Twitter e Facebook.

Divulgazione: I nostri contenuti sono sostenuti dai lettori. Ciò significa che se cliccate su alcuni dei nostri link, potremmo guadagnare una commissione. Vedi come WPBeginner è finanziato , perché è importante e come puoi sostenerci. Ecco il nostro processo editoriale .

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Il kit di strumenti WordPress definitivo

Ottenete l'accesso gratuito al nostro kit di strumenti - una raccolta di prodotti e risorse relative a WordPress che ogni professionista dovrebbe avere!

Reader Interactions

32 commentiLascia una risposta

  1. Syed Balkhi

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. MJB

    hm – I am kind of missing step 0

    so is this a correct assumption`?

    a URL comes in at my hosted webserver
    requesting let’S say my home page

    then the webserver fires up step (1) ?
    which then runs until step (24)
    where WP parses the incoming URL to figure out next steps?

    • WPBeginner Support

      Step 0 can certainly be a URL linking to the site, around step 15 is where the specific page would be considered.

      Admin

  3. Mike Ross

    What about index.php in the root?

    I don’t get it…There are guides out there that lay out a totally different sequence of WordPress initialization.

    • Mike Ross

      No, I’m not talking about the theme’s homepage template. I’m taking about the index.php at the root, which is a part of the WordPress core. It triggers wp-blog-header.php, which then loads wp-load.php which sets up the entire WordPress environment.

      • WPBeginner Support

        The index.php in the root folder tells WordPress to load your theme :)

        Admin

  4. Jason

    Why start from wp-config.php ? I thought it was from index.php

  5. Petru Ciucur

    This is THE Article. Thanks !

    • WPBeginner Support

      Glad our guide was helpful :)

      Admin

  6. Juan Johnson

    HI wpbeginner.
    I noticed that in your sequence, you mentioned that wp does this and then that. Physical, where is the instance of wp()? On the server? Does this happens in between an initial load page post request when I use google browser and the final loading of the wp dashboard after login?

    • WPBeginner Support

      You may want to take another look at the infographic for understanding the loading and how it works.

      Admin

  7. Juan Johnson

    I am a programmer. I am getting more into the web page design, however, I cannot let go of wanting to know what is going on behind the scenes. You article has given me a foundation to start confidently constructing web pages.

    • WPBeginner Support

      Glad our guide was helpful :)

      Admin

  8. Paul McDevitt

    This is brilliant. Ran into several issues with old, expired plugins, updating PHP, etc, and a virus (probably because of the prior items.) So all locked down and scrubbed up now, but wanted to understand better the sequence of events as looking into any one PHP file is like trying to read a bowl of spaghetti, as I did not understand the sequencing of the activities. So absolutely amazing. Love this.

    Thanks

    • WPBeginner Support

      Glad our article was helpful :)

      Admin

    • WPBeginner Support

      Thank you :)

      Admin

  9. Chinenye

    I want to really know what wordpress does, how can I make and share posts through word press? What does it do for me apart from creating a site?

  10. Adrian

    Interesting but not really a definition of how WordPress works. This describes what it does, not how it does it. Would be useful to also know how it does things as well as what it does. For example how does it know which theme to load? Without the how all the above is very high level.

  11. amir saleem

    17. Load Child Theme’s functions.php File

    The functions.php file acts as plugin and is used in WordPress themes to add theme specific features to your website. If you are using a child theme, then WordPress will now load your child theme’s functions.php file.

    Otherwise, it will go on and load your current active theme’s functions.php file.

    18. Load Parent Theme’s functions.php File

    [ If you are using a child theme ], then WordPress will now load your parent theme’s functions.php file.

    check the text in brackets and match all the wording here will be replace [ if you are using a parent theme ].

    Thanks.

    • Caleb

      Amir, I think what the OP is trying to say is that if there is a child theme, then obviously there would be a parent and child functions.php and wordpress first loads the child themes functions.php before loading the parent’s. Otherwise, it just loads the parent’s functions.php straightaway.

  12. Altab Hossen

    Thanks for this nice explanation and info-graphics is so cool !!

  13. Kristian

    And people wonder why WordPress sites are slow. It does all that at run-time for every single page view!

  14. Johnpaul Onwueme

    Thanks for the info graphics

  15. deborah

    still seems complicated to me, but all tech does

  16. Jason

    Would you be willing to offer this as a printed poster? I don’t know if it would generate much interest or make you any money, but since it is such a nice graphic it might make a nice office wall hanging.

  17. anis

    Thank you for this article . I wanted to know since long time
    the different steps for loading .

    What is a database abstraction layer and how to configure it ?

Lascia una risposta

Grazie per aver scelto di lasciare un commento. Tenga presente che tutti i commenti sono moderati in base alle nostre politica dei commenti e il suo indirizzo e-mail NON sarà pubblicato. Si prega di NON utilizzare parole chiave nel campo del nome. Avremo una conversazione personale e significativa.