{"id":77553,"date":"2024-05-07T11:46:49","date_gmt":"2024-05-07T10:46:49","guid":{"rendered":"https:\/\/kinsta.com\/it\/?p=77553&#038;preview=true&#038;preview_id=77553"},"modified":"2025-03-05T17:01:01","modified_gmt":"2025-03-05T16:01:01","slug":"speculative-loading","status":"publish","type":"post","link":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/","title":{"rendered":"Come sfruttare lo Speculative Loading per aumentare la velocit\u00e0 delle pagine di un sito WordPress"},"content":{"rendered":"<p>Oggi le pagine web sono ricche di immagini, video ed elementi interattivi che mirano a migliorare l&#8217;esperienza dell&#8217;utente. Tuttavia, questi elementi possono rallentare il caricamento della pagina.<\/p>\n<p>Con il progredire della tecnologia, un obiettivo rimane costante: le <em>prestazioni<\/em>. Tutti vogliono pagine web che <a href=\"https:\/\/kinsta.com\/it\/impara\/velocizzare-wordpress\/\">si carichino alla velocit\u00e0 della luce<\/a>.<\/p>\n<p>Un modo per rendere pi\u00f9 veloce il caricamento delle pagine \u00e8 quello di effettuare il prerendering o il prefetch prima che l&#8217;utente vi acceda.<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>Breve storia del prerendering<\/h2>\n<p>Nel 2011, il team di Chromium ha introdotto <a href=\"https:\/\/blog.chromium.org\/2011\/06\/prerendering-in-chrome.html\" target=\"_blank\" rel=\"noopener noreferrer\">una prima forma di prerendering<\/a> nel browser Chrome attraverso il tag <code>&lt;link rel=\"prerender\" \u2026 &gt;<\/code>.<\/p>\n<p>Questo permetteva agli <a href=\"https:\/\/kinsta.com\/it\/blog\/tipi-di-developer\/\">sviluppatori<\/a> di suggerire ai <a href=\"https:\/\/kinsta.com\/it\/blog\/browser-piu-sicuri\/\">browser<\/a> le pagine che un utente avrebbe potuto visitare successivamente. Il browser recuperava e renderizzava silenziosamente queste pagine in background, riducendo <em>drasticamente<\/em> il tempo di caricamento quando l&#8217;utente navigava verso quelle pagine.<\/p>\n<p>Nonostante i vantaggi, questa prima implementazione del prerendering utilizzava molte risorse di banda e CPU e poteva causare problemi di privacy se l&#8217;utente non visitava le pagine prerenderizzate. Inoltre, era necessario selezionare manualmente i link di cui effettuare il prerendering, il che non era sempre efficace o fattibile.<\/p>\n<p>Per risolvere questi problemi, Chrome ha deprecato il prerendering che utilizzava il suggerimento <code>rel=prerender<\/code> in favore del metodo <a href=\"https:\/\/developer.chrome.com\/blog\/nostate-prefetch\" target=\"_blank\" rel=\"noopener noreferrer\">NoState Prefetch<\/a>, che prevede il recupero delle risorse di una pagina senza eseguire JavaScript o altre azioni potenzialmente invasive per la privacy.<\/p>\n<p>Il metodo NoState Prefetch migliorava il caricamento delle risorse ma non poteva garantire un caricamento istantaneo della pagina come un prerendering completo.<\/p>\n<h2>La Speculation Rules API<\/h2>\n<p>La <a href=\"https:\/\/developer.chrome.com\/docs\/web-platform\/prerender-pages#speculation-rules-api\" target=\"_blank\" rel=\"noopener noreferrer\">Speculation Rules API<\/a> \u00e8 una nuova API sperimentale definita da JSON che precarica in modo speculativo gli URL prima di navigare verso di essi, con tempi di rendering pi\u00f9 rapidi e una migliore esperienza utente.<\/p>\n<p>L&#8217;API consente agli sviluppatori di configurare regole con una struttura definita in formato JSON all&#8217;interno di uno script <code>script type=\"speculationrules\"<\/code> che il browser pu\u00f2 utilizzare per decidere di quali URL eseguire il prerendering.<\/p>\n<pre><code class=\"language-html\">&lt;script type=\"speculationrules\"&gt;\n{\n  \"prerender\": [\n    {\n      \"source\": \"list\",\n      \"urls\": [\"firstpage.html\", \"secondpage.html\"]\n    }\n  ]\n}\n&lt;\/script&gt;<\/code><\/pre>\n<p>Lo stesso vale per il prefetching, che spesso pu\u00f2 essere un buon primo passo verso il prerendering:<\/p>\n<pre><code class=\"language-html\">&lt;script type=\"speculationrules\"&gt;\n{\n  \"prefetch\": [\n    {\n      \"urls\": [\"firstpage.html\", \"secondpage.html\"]\n    }\n  ]\n}\n&lt;\/script&gt;<\/code><\/pre>\n<p>I frammenti di codice qui sopra mostrano come funziona la Speculation Rules API: specificando un elenco di URL di cui eseguire il prefetch o il prerender.<\/p>\n<p>Recentemente, Google ha annunciato <a href=\"https:\/\/developer.chrome.com\/blog\/speculation-rules-improvements\" target=\"_blank\" rel=\"noopener noreferrer\">nuovi miglioramenti alla Speculation Rules API<\/a>, che ora offre la possibilit\u00e0 di <em>trovare automaticamente i link utilizzando le regole dei documenti<\/em>. L&#8217;API fa s\u00ec che vengano recuperati gli URL dal documento in base a una condition <code>where<\/code>.<\/p>\n<pre><code class=\"language-html\">&lt;script type=\"speculationrules\"&gt;\n{\n  \"prerender\": [\n    {\n      \"source\": \"document\",\n      \"where\": {\n        \"and\": [\n          {\n            \"href_matches\": \"\/*\"\n          },\n          {\n            \"not\": {\n              \"href_matches\": [\n                \"\/wp-login.php\",\n                \"\/wp-admin\/*\"\n              ]\n            }\n          }\n        ]\n      },\n      \"eagerness\": \"moderate\"\n    }\n  ]\n}\n&lt;\/script&gt;<\/code><\/pre>\n<p>In questo frammento di codice, tutti gli URL della pagina vengono considerati per il prerendering, tranne quelli che portano alle pagine di <a href=\"https:\/\/kinsta.com\/it\/blog\/url-login-wordpress\/\">login<\/a> e di amministrazione di WordPress. \u00c8 anche possibile specificare un livello di <code>eagerness<\/code> &#8211; <code>eager<\/code> (subito), <code>moderate<\/code> (al passaggio del mouse dopo 200 ms) e <code>conservative<\/code> (al passaggio del mouse o al tocco).<\/p>\n<p>Per trovare i link nella pagina corrente, possono essere utilizzati selettori <a href=\"https:\/\/kinsta.com\/it\/blog\/best-practice-css\/\">CSS<\/a> in alternativa o insieme a <code>href<\/code> :<\/p>\n<pre><code class=\"language-html\">&lt;script type=\"speculationrules\"&gt;\n{\n  \"prerender\": [{\n    \"source\": \"document\",\n    \"where\": {\n      \"and\": [\n        { \"selector_matches\": \".prerender\" },\n        { \"not\": {\"selector_matches\": \".do-not-prerender\"}}\n      ]\n    },\n    \"eagerness\": \"moderate\"\n  }]\n}\n&lt;\/script&gt;<\/code><\/pre>\n<p>Quando si utilizza la Speculation Rules API, la si pu\u00f2 ispezionare utilizzando i servizi in background degli <strong>speculative loads<\/strong> (carichi speculativi) nella scheda <strong>Application<\/strong> di Chrome.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/inspect-speculation-rules.png\" alt=\"Ispezionare la Speculation Rules API con i servizi in background Speculative loads nella scheda Application di Chrome.\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Ispezionare la Speculation Rules API con i servizi in background Speculative loads nella scheda Application di Chrome.<\/figcaption><\/figure>\n<p>C&#8217;\u00e8 dell&#8217;altro: lo vedremo nella sezione dedicata al debug.<\/p>\n<h3>Supporto dei browser<\/h3>\n<p>La <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/Speculation_Rules_API\" target=\"_blank\" rel=\"noopener noreferrer\">Speculation Rules API \u00e8 supportata<\/a> dai <a href=\"https:\/\/kinsta.com\/it\/mercato-globale-dei-browser\/\">browser moderni basati su Chromium<\/a>, tra cui Chrome ed Edge, a partire da specifiche versioni.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/browser-support.png\" alt=\"Il supporto dei browser per la Speculation Rules API\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Il supporto dei browser per la Speculation Rules API (fonte: <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/Speculation_Rules_API#browser_compatibility\" target=\"_blank\" rel=\"noopener noreferrer\">Mozilla<\/a>).<\/figcaption><\/figure>\n<p>Questo garantisce che gli utenti dei browser supportati possano beneficiare di tempi di caricamento pi\u00f9 rapidi, mentre quelli degli altri browser non subiranno effetti negativi, perch\u00e9 l&#8217;API \u00e8 uno strumento che rispetta il progressive enhancement.<\/p>\n<h2>Il plugin Speculative Loading per WordPress<\/h2>\n<p>Per sfruttare i vantaggi della Speculation Rules API in WordPress, il <a href=\"https:\/\/make.wordpress.org\/performance\/\" target=\"_blank\" rel=\"noopener noreferrer\">team WordPress Performance<\/a> (di cui fanno parte sviluppatori di Google) ha recentemente rilasciato il <a href=\"https:\/\/wordpress.org\/plugins\/speculation-rules\/\" target=\"_blank\" rel=\"noopener noreferrer\">plugin Speculative Loading<\/a>, che consente il caricamento speculativo degli URL di frontend collegati alla pagina.<\/p>\n<p>Finora il plugin \u00e8 stato poco adottato perch\u00e9 l&#8217;API \u00e8 ancora in fase iniziale, ma ha ricevuto alcune recensioni positive.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/review-speculative-loading.png\" alt=\"Recensioni dalla comunit\u00e0 di WordPress per il plugin Speculative Loading\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Recensioni dalla comunit\u00e0 di WordPress per il plugin Speculative Loading.<\/figcaption><\/figure>\n<p>Di default, il plugin \u00e8 configurato per eseguire il prerendering degli URL del frontend di WordPress quando l&#8217;utente passa il mouse su un link pertinente. Questo pu\u00f2 essere personalizzato tramite la sezione <strong>Speculative loading<\/strong> in <strong>Settings<\/strong> &gt; <strong>Reading<\/strong>.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/customize-plugin.png\" alt=\"Personalizzare il plugin Speculative Loading nelle impostazioni di WordPress\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Personalizzare il plugin Speculative Loading nelle impostazioni di WordPress.<\/figcaption><\/figure>\n<p>Ci\u00f2 significa che tutti gli URL collegati alla pagina vengono prerenderizzati con una configurazione <code>eagerness<\/code> di livello <code>moderate<\/code>, che di solito si attiva quando si passa il mouse su un link. Per questo motivo, non \u00e8 necessario fare nulla dopo aver attivato il plugin: <em>funziona subito<\/em>.<\/p>\n<p>Supponiamo che abbiate gi\u00e0 installato il plugin <strong>Speculative Loading<\/strong> su un sito WordPress. Usate i <a href=\"https:\/\/kinsta.com\/courses\/speed-up-wordpress\/using-chrome-developer-tools\/\">DevTools di Chrome<\/a> per ispezionare il sito e cliccate sulla scheda <strong>Elements<\/strong>. Scorrendo verso il basso, noterete che \u00e8 gi\u00e0 stato aggiunto uno script <code>script type=\"speculationrules\"<\/code> con le varie regole di speculazione.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/auto-speculative-rules.png\" alt=\"Ispezionando il sito WordPress si vede che il plugin Speculative Loading aggiunge automaticamente le regole speculative.\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Ispezionando il sito WordPress si vede che il plugin Speculative Loading aggiunge automaticamente le regole speculative.<\/figcaption><\/figure>\n<p>Il plugin utilizza una Regex per specificare i link che devono essere prerenderizzati, i link da non prerenderizzare e per impostare l&#8217;eagerness. Le sezioni seguenti spiegano nel dettaglio queste regole.<\/p>\n<h3>Limiti per prevenire l&#8217;uso eccessivo<\/h3>\n<p>Chrome ha dei limiti per evitare un uso eccessivo dell&#8217;API:<\/p>\n<table>\n<tbody>\n<tr>\n<td colspan=\"1\" rowspan=\"1\"><strong>Eagerness<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\"><strong>Prefetch<\/strong><\/td>\n<td colspan=\"1\" rowspan=\"1\"><strong>Prerender<\/strong><\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\">immediate\/eager<\/td>\n<td colspan=\"1\" rowspan=\"1\">50<\/td>\n<td colspan=\"1\" rowspan=\"1\">10<\/td>\n<\/tr>\n<tr>\n<td colspan=\"1\" rowspan=\"1\">moderate\/conservative<\/td>\n<td colspan=\"1\" rowspan=\"1\">2 (FIFO)<\/td>\n<td colspan=\"1\" rowspan=\"1\">2 (FIFO)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Questi limiti prevengono l&#8217;uso eccessivo dell&#8217;API attraverso varie impostazioni basate sull&#8217;urgenza e sull&#8217;interazione con l&#8217;utente.<\/p>\n<ul>\n<li><code>immediate<\/code> e <code>eager<\/code>: non dipendono dalle azioni dell&#8217;utente, quindi hanno limiti pi\u00f9 elevati. Consentono di regolare la capacit\u00e0 in modo dinamico eliminando le speculazioni pi\u00f9 vecchie.<\/li>\n<li><code>moderate<\/code> e <code>conservative<\/code>: queste impostazioni sono attivate dall&#8217;utente e aderiscono al principio <a href=\"https:\/\/en.wikipedia.org\/wiki\/FIFO_(computing_and_electronics)\" target=\"_blank\" rel=\"noopener noreferrer\">First In, First Out<\/a> (FIFO) con un limite massimo di 2, sostituendo le speculazioni pi\u00f9 vecchie con quelle nuove per conservare la memoria.<\/li>\n<\/ul>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/fifo-rules.gif\" alt=\"FIFO con un limite massimo di due con l'eagerness impostata su moderate\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">FIFO con un limite massimo di due con l&#8217;eagerness impostata su moderate.<\/figcaption><\/figure>\n<h3>Impedire il prefetch e il prerender di alcuni URL<\/h3>\n<p>\u00c8 importante notare che i percorsi di <a href=\"https:\/\/kinsta.com\/it\/blog\/amministrazione-wordpress\/\">WP-admin<\/a> sono esclusi dal prerender e dal prefetch per impostazione predefinita. In qualit\u00e0 di <a href=\"https:\/\/kinsta.com\/it\/blog\/assumere-uno-sviluppatore-wordpress\/\">sviluppatori di WordPress<\/a>, spetta a voi determinare i percorsi a cui dare priorit\u00e0.<\/p>\n<p>Potete personalizzare le regole per stabilire quali tipi di URL precaricare in modo speculativo utilizzando il filtro <code>plsr_speculation_rules_href_exclude_paths<\/code>.<\/p>\n<p>Il seguente esempio di codice assicura che URL come <code>https:\/\/wordpresssite.com\/cart\/<\/code> o <code>https:\/\/wordpresssite.com\/cart\/book\/<\/code> siano esclusi dal prefetching e dal prerendering:<\/p>\n<pre><code class=\"language-php\">&lt;?php\n \nadd_filter(\n    'plsr_speculation_rules_href_exclude_paths',\n    function ( $exclude_paths ) {\n        $exclude_paths[] = '\/cart\/*';\n        return $exclude_paths;\n    }\n);<\/code><\/pre>\n<p>A volte potreste voler escludere un URL dal prerender e attivarne il prefetch. Ad esempio, una pagina con <a href=\"https:\/\/kinsta.com\/it\/blog\/cosa-e-javascript\/\">JavaScript<\/a> lato client per aggiornare lo stato dell&#8217;utente probabilmente non dovrebbe essere sottoposta a prerendering, ma sarebbe ragionevole eseguirne il prefetch.<\/p>\n<p>A questo scopo, il filtro <code>plsr_speculation_rules_href_exclude_paths<\/code> riceve la modalit\u00e0 corrente ( <code>prefetch<\/code> o <code>prerender<\/code>) per fornire esclusioni condizionali.<\/p>\n<p>Ad esempio, facciamo in modo che URL come <code>https:\/\/wordpresssite.com\/products\/<\/code> non possano essere prerenderizzati, pur consentendone il prefetch.<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\nadd_filter(\n    'plsr_speculation_rules_href_exclude_paths',\n    function ( array $exclude_paths, string $mode ): array {\n        if ( 'prerender' === $mode ) {\n            $exclude_paths[] = '\/products\/*';\n        }\n        return $exclude_paths;\n    }\n);<\/code><\/pre>\n<h2>Debug delle regole di speculazione per i siti WordPress<\/h2>\n<p>Il debug delle regole di speculazione pu\u00f2 essere complicato perch\u00e9 le pagine prerenderizzate vengono rese in un rendering separato, come una <em>scheda di background nascosta<\/em> che sostituisce la scheda corrente quando viene attivata. Il team di Chrome ha lavorato molto con i DevTools, consentendoci cos\u00ec di eseguire il debug.<\/p>\n<p>In Chrome DevTools, andate alla scheda <strong>Applications<\/strong> e poi scorrete verso il basso fino alla scheda <strong>Speculative loads<\/strong>. Questa scheda fornisce agli sviluppatori dettagli sulla speculazione, sugli URL prerenderizzati, su quelli che falliscono e molto altro ancora.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/debug-speculation-rules.png\" alt=\"Debug delle regole di speculazione negli strumenti per sviluppatori di Chrome\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Il debug delle regole di speculazione negli strumenti per sviluppatori di Chrome.<\/figcaption><\/figure>\n<p>Qui si vede che cinque link della pagina possono essere prerenderizzati in base agli URL che corrispondono alle regole impostate nel JSON delle regole di speculazione, come si vede qui sotto. \u00c8 bene notare che non \u00e8 necessario elencare tutti gli URL; le regole del documento consentono al browser di rilevarli dagli stessi link di origine della pagina.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/chrome-devtool.png\" alt=\"Chrome Devtool visualizza le informazioni sui vari link del sito, in modo da sapere quando sono sottoposti a prefetch o prerender.\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Chrome Devtool visualizza le informazioni sui vari link del sito in modo da sapere quando sono sottoposti a prefetch o prerender.<\/figcaption><\/figure>\n<p>Lo &#8220;stato&#8221; di alcuni link \u00e8 indicato come &#8220;Not triggered&#8221;: il processo di prerenderizzazione non \u00e8 ancora iniziato. Tuttavia, se passiamo il mouse sui link della pagina, vediamo che lo stato cambia man mano che gli URL vengono prerenderizzati.<\/p>\n<p>Ricordate che Chrome ha fissato dei limiti per i prerender, tra cui un massimo di due prerender per <code>moderate<\/code> eagerness, quindi dopo aver passato il mouse sul terzo link, vedremo il motivo del fallimento per quell&#8217;URL:<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/fifo-effect.png\" alt=\"Dopo aver passato il mouse su due link, entra in vigore il FIFO\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Dopo aver passato il mouse su due link, entra in vigore il FIFO.<\/figcaption><\/figure>\n<p>\u00c8 anche possibile cambiare il renderer utilizzato dai pannelli di DevTools con il menu a tendina in alto a destra o selezionando un URL nella parte superiore del pannello e selezionando <strong>Inspect<\/strong>:<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/inspect-prerendered-page.png\" alt=\"Ispezione delle pagine prerenderizzate con i DevTools di Chrome\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Ispezione delle pagine prerenderizzate con i DevTools di Chrome.<\/figcaption><\/figure>\n<p>Questo menu a tendina (e il valore selezionato) \u00e8 condiviso da tutti gli altri pannelli, come ad esempio il pannello <strong>Network<\/strong>, dove si vede che la pagina richiesta \u00e8 quella prerenderizzata:<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/network-prerendered.png\" alt=\"Scheda Network della pagina prerenderizzata che mostra i file gi\u00e0 prerenderizzati\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Scheda Network della pagina prerenderizzata che mostra i file gi\u00e0 prerenderizzati.<\/figcaption><\/figure>\n<p>Oppure il pannello <strong>Elements<\/strong>, dove si vede il contenuto della pagina:<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/element-prerendered.png\" alt=\"La scheda Element mostra il contenuto HTML della pagina prerenderizzata\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">La scheda Element mostra il contenuto HTML della pagina prerenderizzata.<\/figcaption><\/figure>\n<p>Cos\u00ec come \u00e8 possibile eseguire il debug delle pagine prerenderizzate, si pu\u00f2 anche eseguire il prefetch delle pagine. Per il plugin &#8220;Speculative loading&#8221;, selezionate <strong>Prefetch<\/strong> come <strong>Speculation Mode<\/strong>.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/prefetch-speculative-loading.png\" alt=\"Passare da Prerender a Prefetch utilizzando le impostazioni di Speculative loading\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Passare da Prerender a Prefetch utilizzando le impostazioni di Speculative loading.<\/figcaption><\/figure>\n<p>Ora, quando si ispeziona la pagina con DevTools e si naviga nella scheda Speculative loads, l&#8217;<strong>azione<\/strong> sar\u00e0 Prefetch per i vari URL e anche le regole cambieranno.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/prefetched-links.png\" alt=\"Lo stato dei link impostati per il prefetch \u00e8 accessibile tramite i DevTools di Chrome\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Lo stato dei link impostati per il prefetch \u00e8 accessibile tramite i DevTools di Chrome.<\/figcaption><\/figure>\n<p>Quando si passa alla scheda <strong>Network<\/strong>, dopo aver messo il mouse su un link, le risorse prefissate vengono mostrate per ultime, come si pu\u00f2 vedere dalla colonna <strong>Type<\/strong>. Queste vengono recuperate con la priorit\u00e0 pi\u00f9 bassa perch\u00e9 sono destinate alle navigazioni future e Chrome d\u00e0 la priorit\u00e0 alle risorse della pagina corrente.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/prefetch-output.png\" alt=\"La scheda Network mostra le pagine impostate per il prefetch quando si passa il mouse sul link\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">La scheda Network mostra le pagine impostate per il prefetch quando si passa il mouse sul link.<\/figcaption><\/figure>\n<h3>Confronto delle prestazioni<\/h3>\n<p>Finora abbiamo visto cosa fa e come funziona il plugin &#8220;Speculative Loading&#8221;. Basta con la teoria; confrontiamo le prestazioni di due siti identici sullo stesso server (<a href=\"https:\/\/kinsta.com\/it\/hosting-wordpress\/\">Hosting WordPress di Kinsta<\/a>).<\/p>\n<p>Per fare ci\u00f2, ho creato due siti WordPress con la dashboard <a href=\"https:\/\/my.kinsta.com\/?lang=it\" target=\"_blank\" rel=\"noopener noreferrer\">MyKinsta<\/a> sullo stesso data center (<code>Iowa (US Central)<\/code>, potenziato con le <a href=\"https:\/\/kinsta.com\/it\/blog\/benchmark-delle-performance\/\">VM C3D di Google<\/a>) e senza installare alcun altro plugin per entrambi i siti.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/bare-speculative-sites.png\" alt=\"Due siti creati con MyKinsta per confrontare un sito con e senza il plugin Speculative Loading\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Due siti creati con MyKinsta per confrontare un sito con e senza il plugin Speculative Loading.<\/figcaption><\/figure>\n<p>Il sito &#8220;Bare-site&#8221; \u00e8 privo del plugin, mentre per il sito &#8220;Speculative-site&#8221; il plugin &#8220;Speculative Loading&#8221; \u00e8 installato e attivato nella <a href=\"https:\/\/kinsta.com\/it\/blog\/amministrazione-wordpress\/\">bacheca di WordPress<\/a>.<\/p>\n<p>\u00c8 importante sapere che l&#8217;API Speculative Rules migliora solo il tempo di caricamento della pagina successiva che si sta per navigare: non \u00e8 possibile giudicare questo aspetto basandosi su strumenti generici per le prestazioni del sito come <a href=\"https:\/\/kinsta.com\/it\/blog\/pagespeed-insights-api\/\">Lighthouse<\/a>.<\/p>\n<p>Verifichiamo la velocit\u00e0 della pagina caricando una pagina da uno specifico link interno dei due siti web e utilizzando la scheda <strong>Network<\/strong> di Chrome DevTool durante l&#8217;ispezione del sito per vedere il tempo di caricamento e altre informazioni.<\/p>\n<p>Per quanto riguarda &#8220;Bare-site&#8221;, noterete che il caricamento \u00e8 pi\u00f9 lungo perch\u00e9 l&#8217;intero processo di caricamento avviene in movimento e il contenuto DOM viene appena caricato:<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/bare-site.png\" alt=\"Un sito non prerenderizzato richiede un tempo maggiore per il caricamento del contenuto del DOM e di altre informazioni.\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Il sito non prerenderizzato impiega pi\u00f9 tempo per il caricamento del contenuto del DOM e di altre informazioni.<\/figcaption><\/figure>\n<p>Ma nel caso di &#8220;Speculative-site&#8221;, il contenuto del DOM \u00e8 gi\u00e0 stato caricato tramite la Speculative API e memorizzato nella cache.<\/p>\n<figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/speculative-site.png\" alt=\"Un sito gi\u00e0 prerenderizzato con il plugin Speculative Loading non carica nuovamente i contenuti DOM\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Un sito gi\u00e0 prerenderizzato con il plugin Speculative Loading non carica nuovamente i contenuti DOM.<\/figcaption><\/figure>\n<p>La differenza tra i due siti potrebbe sembrare minima. In questo caso, la differenza \u00e8 di circa <strong>0,22 s<\/strong>, ma nel caso di un sito di grandi dimensioni con pi\u00f9 contenuti, si inizia a notare una differenza significativa.<\/p>\n<h2>Impatto dell&#8217;API Speculation Rules sulle funzioni analitiche<\/h2>\n<p>Le <a href=\"https:\/\/kinsta.com\/it\/argomenti\/statistiche\/\">funzioni analitiche<\/a> sono essenziali per tracciare l&#8217;utilizzo del sito web attraverso le visualizzazioni di pagina e gli eventi e per valutare le prestazioni attraverso il monitoraggio degli utenti reali (RUM). \u00c8 importante sapere che il prerendering pu\u00f2 influenzarle.<\/p>\n<p>Ad esempio, l&#8217;utilizzo dell&#8217;API Speculation Rules potrebbe richiedere del codice aggiuntivo per attivare le funzioni analitiche solo quando le pagine prerenderizzate vengono effettivamente visitate. Sebbene <a href=\"https:\/\/kinsta.com\/it\/blog\/come-utilizzare-google-analytics\/\">Google Analytics<\/a>, Google Publisher Tag (GPT) e <a href=\"https:\/\/kinsta.com\/it\/blog\/google-ads-vs-adsense\/\">Google AdSense<\/a> ritardino il tracciamento fino a quando una pagina non \u00e8 attiva, non tutti i provider lo fanno di default.<\/p>\n<p>Per gestire questo problema, \u00e8 possibile impostare una promessa che inizializzi le funzioni analitiche solo all&#8217;attivazione della pagina:<\/p>\n<pre><code class=\"language-js\">\/\/ Promise to activate analytics on page activation for prerendered pages\nconst whenActivated = new Promise((resolve) =&gt; {\n  if (document.prerendering) {\n    document.addEventListener('prerenderingchange', resolve);\n  } else {\n    resolve();\n  }\n});\n\nasync function initAnalytics() {\n  await whenActivated;\n  \/\/ Initialize analytics\n}\n\ninitAnalytics();<\/code><\/pre>\n<h2>Riepilogo<\/h2>\n<p>Questo articolo spiega cos&#8217;\u00e8 l&#8217;API Speculative Rules, come funziona e come utilizzarla su un sito WordPress. Si tratta di una funzione ancora sperimentale, ma che sta gradualmente ottenendo un&#8217;adozione massiccia.<\/p>\n<p>Le regole di speculazione sono ancora limitate alle pagine della stessa scheda, ma sono in corso sforzi per ridurre queste restrizioni.<\/p>\n<p>\u00c8 inoltre importante sapere che una parte significativa delle prestazioni del sito dipende dalla qualit\u00e0 dell&#8217;hosting. Noi di Kinsta siamo noti per offrire un <a href=\"https:\/\/kinsta.com\/it\/hosting-wordpress\/\">hosting WordPress di qualit\u00e0 superiore<\/a> con decine di funzioni premium.<\/p>\n<p>La nostra infrastruttura \u00e8 completamente containerizzata e alimentata esclusivamente dalla <a href=\"https:\/\/kinsta.com\/it\/blog\/piattaforma-cloud-per-sviluppatori\/\">Google Cloud Platform<\/a> sulla rete Premium Tier di Google, che ci permette di offrire un&#8217;ampia selezione di data server pi\u00f9 veloci, prestazioni incredibili, caching a livello di server, risorse dedicate e sicurezza avanzata.<\/p>\n<p>Date un&#8217;<a href=\"https:\/\/kinsta.com\/it\/clienti\/local-digital\/\">occhiata a ci\u00f2 che dicono i nostri clienti<\/a> o <a href=\"https:\/\/kinsta.com\/it\/contattaci\/\">contattateci<\/a> per saperne di pi\u00f9 sulla nostra soluzione di hosting gestito e sui suoi vantaggi.<\/p>\n<p><em>Cosa ne pensate dell&#8217;API Speculative Rules e della sua introduzione in WordPress? Condividetelo con noi nei commenti qui sotto!<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Oggi le pagine web sono ricche di immagini, video ed elementi interattivi che mirano a migliorare l&#8217;esperienza dell&#8217;utente. Tuttavia, questi elementi possono rallentare il caricamento della &#8230;<\/p>\n","protected":false},"author":287,"featured_media":77554,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[25869,25868],"class_list":["post-77553","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-prestazioni-wordpress","topic-velocita-sito"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Come Speculative Loading pu\u00f2 aumentare la velocit\u00e0 delle pagine di WordPress - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Scopri come aumentare la velocit\u00e0 delle pagine del tuo sito WordPress con l&#039;API Speculative Rule tramite il plugin Speculative Loading disponibile in WordPress.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Come sfruttare lo Speculative Loading per aumentare la velocit\u00e0 delle pagine di un sito WordPress\" \/>\n<meta property=\"og:description\" content=\"Scopri come aumentare la velocit\u00e0 delle pagine del tuo sito WordPress con l&#039;API Speculative Rule tramite il plugin Speculative Loading disponibile in WordPress.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstaitalia\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-05-07T10:46:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-05T16:01:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Joel Olawanle\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Scopri come aumentare la velocit\u00e0 delle pagine del tuo sito WordPress con l&#039;API Speculative Rule tramite il plugin Speculative Loading disponibile in WordPress.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed-1024x512.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@olawanle_joel\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_IT\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Joel Olawanle\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"17 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/\"},\"author\":{\"name\":\"Joel Olawanle\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07\"},\"headline\":\"Come sfruttare lo Speculative Loading per aumentare la velocit\u00e0 delle pagine di un sito WordPress\",\"datePublished\":\"2024-05-07T10:46:49+00:00\",\"dateModified\":\"2025-03-05T16:01:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/\"},\"wordCount\":2368,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/it\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg\",\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/\",\"url\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/\",\"name\":\"Come Speculative Loading pu\u00f2 aumentare la velocit\u00e0 delle pagine di WordPress - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/it\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg\",\"datePublished\":\"2024-05-07T10:46:49+00:00\",\"dateModified\":\"2025-03-05T16:01:01+00:00\",\"description\":\"Scopri come aumentare la velocit\u00e0 delle pagine del tuo sito WordPress con l'API Speculative Rule tramite il plugin Speculative Loading disponibile in WordPress.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Prestazioni di WordPress\",\"item\":\"https:\/\/kinsta.com\/it\/argomenti\/prestazioni-wordpress\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Come sfruttare lo Speculative Loading per aumentare la velocit\u00e0 delle pagine di un sito WordPress\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/it\/#website\",\"url\":\"https:\/\/kinsta.com\/it\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluzioni di hosting premium, veloci e sicure\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/it\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/it\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/it\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/it\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstaitalia\/\",\"https:\/\/x.com\/Kinsta_IT\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07\",\"name\":\"Joel Olawanle\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinsta.com\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g\",\"caption\":\"Joel Olawanle\"},\"description\":\"Joel is a Frontend developer working at Kinsta as a Technical Editor. He is a passionate teacher with love for open source and has written over 300 technical articles majorly around JavaScript and it's frameworks.\",\"sameAs\":[\"https:\/\/joelolawanle.com\/\",\"https:\/\/www.linkedin.com\/in\/olawanlejoel\/\",\"https:\/\/x.com\/olawanle_joel\",\"https:\/\/www.youtube.com\/@joelolawanle\"],\"gender\":\"male\",\"knowsAbout\":[\"JavaScript\",\"React\",\"Next.js\"],\"knowsLanguage\":[\"English\"],\"jobTitle\":\"Technical Editor\",\"worksFor\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/it\/blog\/author\/joelolawanle\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Come Speculative Loading pu\u00f2 aumentare la velocit\u00e0 delle pagine di WordPress - Kinsta\u00ae","description":"Scopri come aumentare la velocit\u00e0 delle pagine del tuo sito WordPress con l'API Speculative Rule tramite il plugin Speculative Loading disponibile in WordPress.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/","og_locale":"it_IT","og_type":"article","og_title":"Come sfruttare lo Speculative Loading per aumentare la velocit\u00e0 delle pagine di un sito WordPress","og_description":"Scopri come aumentare la velocit\u00e0 delle pagine del tuo sito WordPress con l'API Speculative Rule tramite il plugin Speculative Loading disponibile in WordPress.","og_url":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstaitalia\/","article_published_time":"2024-05-07T10:46:49+00:00","article_modified_time":"2025-03-05T16:01:01+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg","type":"image\/jpeg"}],"author":"Joel Olawanle","twitter_card":"summary_large_image","twitter_description":"Scopri come aumentare la velocit\u00e0 delle pagine del tuo sito WordPress con l'API Speculative Rule tramite il plugin Speculative Loading disponibile in WordPress.","twitter_image":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed-1024x512.jpg","twitter_creator":"@olawanle_joel","twitter_site":"@Kinsta_IT","twitter_misc":{"Scritto da":"Joel Olawanle","Tempo di lettura stimato":"17 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/"},"author":{"name":"Joel Olawanle","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07"},"headline":"Come sfruttare lo Speculative Loading per aumentare la velocit\u00e0 delle pagine di un sito WordPress","datePublished":"2024-05-07T10:46:49+00:00","dateModified":"2025-03-05T16:01:01+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/"},"wordCount":2368,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/it\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg","inLanguage":"it-IT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/","url":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/","name":"Come Speculative Loading pu\u00f2 aumentare la velocit\u00e0 delle pagine di WordPress - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/it\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg","datePublished":"2024-05-07T10:46:49+00:00","dateModified":"2025-03-05T16:01:01+00:00","description":"Scopri come aumentare la velocit\u00e0 delle pagine del tuo sito WordPress con l'API Speculative Rule tramite il plugin Speculative Loading disponibile in WordPress.","breadcrumb":{"@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/it\/blog\/speculative-loading\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#primaryimage","url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg","contentUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2024\/05\/wp-how-speculative-loading-in-wordpress-boost-page-speed.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/it\/blog\/speculative-loading\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/it\/"},{"@type":"ListItem","position":2,"name":"Prestazioni di WordPress","item":"https:\/\/kinsta.com\/it\/argomenti\/prestazioni-wordpress\/"},{"@type":"ListItem","position":3,"name":"Come sfruttare lo Speculative Loading per aumentare la velocit\u00e0 delle pagine di un sito WordPress"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/it\/#website","url":"https:\/\/kinsta.com\/it\/","name":"Kinsta\u00ae","description":"Soluzioni di hosting premium, veloci e sicure","publisher":{"@id":"https:\/\/kinsta.com\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/it\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/it\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/it\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstaitalia\/","https:\/\/x.com\/Kinsta_IT","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07","name":"Joel Olawanle","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinsta.com\/it\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g","caption":"Joel Olawanle"},"description":"Joel is a Frontend developer working at Kinsta as a Technical Editor. He is a passionate teacher with love for open source and has written over 300 technical articles majorly around JavaScript and it's frameworks.","sameAs":["https:\/\/joelolawanle.com\/","https:\/\/www.linkedin.com\/in\/olawanlejoel\/","https:\/\/x.com\/olawanle_joel","https:\/\/www.youtube.com\/@joelolawanle"],"gender":"male","knowsAbout":["JavaScript","React","Next.js"],"knowsLanguage":["English"],"jobTitle":"Technical Editor","worksFor":"Kinsta","url":"https:\/\/kinsta.com\/it\/blog\/author\/joelolawanle\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/77553","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/users\/287"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/comments?post=77553"}],"version-history":[{"count":12,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/77553\/revisions"}],"predecessor-version":[{"id":80580,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/posts\/77553\/revisions\/80580"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/translations\/jp"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/translations\/es"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/translations\/nl"},{"href":"https:\/\/kinsta.com\/it\/wp-json\/kinsta\/v1\/posts\/77553\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/media\/77554"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/media?parent=77553"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/tags?post=77553"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/it\/wp-json\/wp\/v2\/topic?post=77553"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}