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 limitare l'API Heartbeat in WordPress (metodi semplici per principianti)

Stai cercando piccoli accorgimenti per aumentare la velocità del tuo sito WordPress? Ti sei mai chiesto se limitare la Heartbeat API di WordPress possa aiutare? Potrebbe sembrare un po' tecnico, ma resta con noi!

La Heartbeat API di WordPress è un sistema utile che lavora dietro le quinte. Gestisce attività come il salvataggio automatico dei post mentre scrivi e l'invio di notifiche nella dashboard.

Per impostazione predefinita, controlla costantemente gli aggiornamenti ogni 15 secondi quando stai modificando un post e ogni minuto quando stai semplicemente navigando nella tua dashboard. Questa attività frequente può mettere a dura prova la CPU del tuo server e rallentare il tuo sito. 

La buona notizia è che alcuni dei nostri lettori hanno scoperto che la regolazione della frequenza della Heartbeat API ha migliorato significativamente le prestazioni del loro sito WordPress.

In questo articolo, ti mostreremo come gestire la Heartbeat API in WordPress per ottimizzare la velocità del tuo sito. Non preoccuparti, è più semplice di quanto sembri e puoi farlo senza compromettere nessuna delle funzionalità importanti su cui fai affidamento!

Come limitare la Heartbeat API in WordPress

Cos'è la Heartbeat API?

La Heartbeat API è una delle principali interfacce di programmazione delle applicazioni (API) che WordPress fornisce per aiutare gli sviluppatori a interagire con la piattaforma e aggiungere nuove funzionalità.

È stata introdotta in WordPress 3.6 per abilitare la comunicazione in tempo reale tra il browser e il server mentre un utente è connesso alla dashboard di WordPress. In termini tecnici, questa comunicazione viene gestita utilizzando chiamate AJAX.

In parole povere, le chiamate AJAX sono come messaggi tra il tuo browser e il server. Invece di ricaricare la pagina, il tuo browser chiede al server solo le informazioni di cui ha bisogno. Il server invia l'aggiornamento senza aggiornare l'intera pagina, facendo sembrare le cose più veloci.

L'API Heartbeat rende possibili alcune importanti funzionalità di WordPress, come ad esempio:

  • Aggiornamenti in tempo reale: Consente aggiornamenti quasi in tempo reale senza dover aggiornare la pagina. Ad esempio, se qualcun altro sta modificando un post, verrai avvisato e il post verrà bloccato in modo da non modificare accidentalmente il suo lavoro.
  • Salvataggio automatico del lavoro: Quando stai scrivendo un post o una pagina del blog, l'API Heartbeat aiuta a salvare automaticamente il tuo lavoro ogni 60 secondi. In questo modo, se qualcosa va storto, non perderai le tue modifiche recenti.
  • Sessioni utente: Aiuta WordPress a tenere traccia di chi sta attualmente utilizzando il sito e da quanto tempo è connesso. Questo funziona insieme al sistema di sicurezza di WordPress per aiutare a gestire in modo sicuro gli accessi degli utenti.
  • Plugin WordPress: Molti plugin WordPress utilizzano anche l'API Heartbeat per aggiungere funzionalità in tempo reale. Questi includono l'elaborazione avanzata dei moduli, il controllo delle versioni dei contenuti, le notifiche live, la gestione delle sessioni utente, il monitoraggio della sicurezza e molto altro. I plugin possono utilizzare Heartbeat per creare esperienze utente più interattive e dinamiche.

Queste funzionalità sono incredibilmente utili. Il problema è che se hai troppe richieste, il tuo server rallenterà.

Ma non preoccuparti, è facile da gestire. Puoi semplicemente impostare un intervallo di tempo più lungo per l'API Heartbeat. Facendola controllare ogni, diciamo, due minuti invece che ogni pochi secondi, puoi contribuire ad accelerare il tuo sito web.

Quando lo fai controllare meno spesso, gli aggiornamenti istantanei avverranno comunque, solo non così velocemente. Si tratta di trovare il perfetto equilibrio per il tuo sito web, assicurandoti che sia veloce e abbia ancora tutte quelle utili funzionalità in tempo reale.

È meglio limitare o disabilitare l'API Heartbeat?

Ora, potresti essere tentato di disattivare completamente l'API Heartbeat per ottenere prestazioni WordPress ancora migliori. Sconsigliamo vivamente di disabilitarla del tutto nella maggior parte dei casi!

Disabilitare completamente l'API Heartbeat può portare a problemi imprevisti, anche se lavori da solo e non hai bisogno di aggiornamenti super veloci. Rischieresti di perdere lavoro non salvato, di non ricevere importanti aggiornamenti di sicurezza e di causare problemi di accesso. Pensaci bene prima di disattivarla.

Invece di disabilitarla del tutto, regolare semplicemente la sua frequenza è solitamente un modo molto più sicuro ed efficace per ottimizzare le prestazioni del tuo sito.

Detto questo, diamo un'occhiata a come limitare (e persino disabilitare) la WordPress Heartbeat API. Ecco gli argomenti che tratteremo in questo tutorial:

  1. Limitare la Heartbeat API con un plugin (veloce e facile)
  2. Limitare la Heartbeat API con il codice
  3. Disabilitare la Heartbeat API senza un plugin

Limitare la Heartbeat API con un plugin (veloce e facile)

La prima cosa che devi fare è installare e attivare il plugin gratuito Dynamic Front-End Heartbeat Control. Per istruzioni dettagliate, puoi fare riferimento alla nostra guida passo passo su come installare un plugin WordPress.

Dopo l'attivazione, questo plugin inizierà automaticamente a migliorare le prestazioni del tuo sito web senza alcuna configurazione aggiuntiva. Regola l'intervallo di Heartbeat in tempo reale, adattandosi alle mutevoli esigenze del tuo sito web.

Per molti siti web, questa impostazione automatica è perfetta! Tuttavia, se desideri avere un maggiore controllo, puoi anche modificare manualmente le impostazioni di Heartbeat utilizzando le opzioni del plugin.

Suggerimento: Molti plugin per le prestazioni di WordPress, come WP Rocket e Perfmatters, possono anche limitare la Heartbeat API. Per evitare conflitti, assicurati di utilizzare un solo plugin per questo scopo.

Opzionale: Limitare o disabilitare manualmente la Heartbeat API

Per controllare manualmente la Heartbeat API, devi navigare su Impostazioni » DFEHC nella tua bacheca di WordPress.

In questa pagina delle impostazioni, vedrai una casella di controllo che dice ‘Disabilita Heartbeat’. Se desideri davvero disattivare completamente la Heartbeat API, puoi selezionare questa casella.

Disabilitare l'API Heartbeat con un plugin

Tuttavia, ricorda che questo interromperà le funzionalità in tempo reale di cui abbiamo parlato in precedenza. Di solito, è meglio limitare l'Heartbeat, non disabilitarlo completamente.

Puoi cambiare la frequenza con cui l'API Heartbeat controlla le attività quando lavori nella tua bacheca di WordPress, chiamata anche backend.

Per fare ciò, cerca l'opzione ‘Backend Heartbeat Control’ e seleziona la casella accanto ad essa.

Limitare l'intervallo di Heartbeat del backend con un plugin

Quindi, puoi inserire un numero nella casella per impostare il nuovo intervallo in secondi. Ricorda, l'impostazione predefinita è 60 secondi (una volta al minuto). Se desideri che l'Heartbeat controlli meno frequentemente, puoi inserire un numero più alto, come 90 o 120 secondi.

Allo stesso modo, puoi cambiare l'intervallo di Heartbeat specificamente per quando stai scrivendo post o pagine nell'editor di contenuti. Trova la casella ‘Editor Heartbeat Control’ e selezionala.

Limitare l'intervallo dell'editor dell'API Heartbeat con un plugin

Quindi, inserisci l'intervallo desiderato in secondi. L'impostazione predefinita qui è 15 secondi, che è piuttosto frequente.

Se desideri ridurre la frequenza dei controlli mentre stai scrivendo, puoi aumentare questo numero. Puoi digitare il numero direttamente nella casella o utilizzare le piccole frecce su e giù per cambiare il numero di un secondo alla volta.

Il plugin include anche un cursore ‘Priority Settings’ che ti consente di bilanciare tra le prestazioni del server e le esigenze dei visitatori.

Scorrendo verso ‘Increase server priority’ si riduce il carico del server diminuendo la frequenza degli aggiornamenti. Scorrendo verso ‘Increase visitor priority’ si consentono aggiornamenti più frequenti ma si richiedono più risorse del server.

Regolare le impostazioni di priorità per limitare l'API Heartbeat con un plugin

Dopo aver apportato tutte le modifiche desiderate, assicurati di scorrere fino in fondo alla pagina e fare clic sul pulsante ‘Save Changes’ . Questo è importante per assicurarsi che le nuove impostazioni vengano salvate e inizino a funzionare.

Limitare la Heartbeat API con il codice

Puoi anche limitare l'API Heartbeat in WordPress aggiungendo uno snippet di codice al tuo sito web.

Ora, aggiungere codice potrebbe sembrare un po' spaventoso e devi fare un po' di attenzione. Se commetti un errore durante l'aggiunta di codice direttamente, ciò potrebbe causare problemi al tuo sito web.

Abbiamo una guida utile che spiega come incollare in sicurezza snippet di codice in WordPress, quindi puoi consultarla prima per sentirti più a tuo agio.

Il modo più sicuro e semplice per aggiungere il codice è utilizzare il plugin WPCode perché ha già lo snippet di codice nella sua libreria. Tutto quello che devi fare è attivarlo.

Esiste una versione premium, ma per questo tutorial utilizzeremo il WPCode Free Plugin perché include lo snippet ‘Heartbeat Setting’. Se hai bisogno di aiuto per aggiungerlo al tuo sito, consulta la nostra guida su come installare un plugin di WordPress.

Dopo aver attivato il plugin, puoi creare un nuovo snippet navigando su WPCode » + Aggiungi Snippet. In quella pagina, puoi utilizzare la funzione di ricerca per trovare lo snippet ‘Heartbeat Setting’.

Creare uno snippet di impostazioni Heartbeat in WPCode

Ora, semplicemente passa il mouse sopra lo snippet e poi fai clic sul pulsante ‘Usa snippet’.

Questo aprirà la pagina Modifica Snippet. Non preoccuparti. Tutto è già impostato per te. Tutto ciò che devi fare è rendere attivo lo snippet.

Cerca l'interruttore ‘Attiva’ in alto a destra della pagina e spostalo sulla posizione On. Dopodiché, fai clic sul pulsante ‘Aggiorna’.

Attivare lo snippet di impostazioni Heartbeat in WPCode

Questo snippet aggiunge una nuova voce alla pagina Impostazioni Generali, dove puoi configurare come limitare la Heartbeat API in WordPress. Semplicemente naviga su Impostazioni » Generali e scorri fino in fondo alla pagina.

Per impostazione predefinita, lo snippet modifica l'intervallo Heartbeat a 120 secondi, che è un buon punto di partenza per migliorare le prestazioni. Ma puoi cambiare questo numero come preferisci.

Digita semplicemente un nuovo numero nel campo o usa le piccole frecce su e giù accanto al campo per regolare i secondi.

Modificare l'intervallo di Heartbeat nella pagina delle impostazioni generali

Ricorda, dopo aver cambiato il numero, devi scorrere di nuovo verso il basso e fare clic sul pulsante ‘Salva Modifiche’ in fondo alla pagina Impostazioni Generali . Questo garantirà che la tua nuova impostazione dell'intervallo Heartbeat venga salvata e inizi a funzionare.

Suggerimento Pro: Sei curioso di sapere quanto sono migliorate le prestazioni del tuo WordPress limitando l'API Heartbeat? Esegui semplicemente un test di velocità prima e dopo averlo fatto. Puoi imparare come nella nostra guida su come eseguire correttamente un test di velocità del sito web.

Per coloro che hanno più familiarità con il codice, esiste anche un altro modo per aggiungere questo snippet di codice direttamente nei file del tuo sito web.

Puoi aggiungere il codice direttamente al file functions.php del tuo tema. Tuttavia, questo è un po' più avanzato e l'utilizzo del plugin WPCode è generalmente più facile e sicuro per la maggior parte degli utenti.

Se sei interessato a questo metodo più avanzato, puoi trovare il codice qui sotto:

// Add a new setting in wp-admin > Settings > General
add_action( 'admin_init', function() {
   register_setting( 'general', 'custom_heartbeat_interval', 'intval' );
   add_settings_field( 'custom_heartbeat_interval', 'Heartbeat Interval', function() {
       $interval = get_option( 'custom_heartbeat_interval', 120 );
       echo "<input type='number' name='custom_heartbeat_interval' value='".absint($interval)."' min='15' max='120' /> seconds";
   }, 'general' );
});

add_filter( 'heartbeat_settings', function( $settings ) {
   $settings['interval'] = get_option( 'custom_heartbeat_interval', 120 );
   return $settings;
});

Ma per la maggior parte delle persone, l'utilizzo del plugin WPCode è il modo consigliato per limitare l'API Heartbeat.

Per maggiori dettagli, consulta la nostra guida su come aggiungere facilmente codice personalizzato in WordPress.

Disabilitare la Heartbeat API senza un plugin

Se hai deciso di disabilitare completamente l'API Heartbeat sul tuo sito web, puoi farlo anche aggiungendo uno snippet di codice al file functions.php del tuo tema o al plugin WPCode.

Questa volta, il codice per disabilitare Heartbeat non è già presente nella libreria WPCode, quindi lo copieremo e lo incolleremo noi stessi in WPCode. Non preoccuparti, è comunque facile da fare!

Innanzitutto, assicurati di avere il plugin WPCode installato e attivato, come abbiamo detto nella sezione precedente. Una volta che WPCode è pronto, vai su WPCode » + Aggiungi Snippet nel tuo menu di amministrazione di WordPress.

Successivamente, devi scegliere l'opzione per aggiungere il tuo codice personalizzato. Cerca lo snippet chiamato ‘Aggiungi il tuo codice personalizzato (Nuovo Snippet)’. Quando passi il mouse sopra questa voce, puoi fare clic sul pulsante ‘Usa snippet’.

Aggiungere un nuovo snippet in WPCode

Nella schermata successiva, WPCode ti chiederà di scegliere il tipo di codice che stai aggiungendo.

Poiché il codice di cui abbiamo bisogno è in PHP, devi fare clic sull'opzione ‘Snippet PHP’.

Selezionare l'opzione snippet PHP in WPCode

Questo ti porterà alla pagina Crea Snippet Personalizzato.

Innanzitutto, dovresti dare un titolo al tuo snippet in modo da sapere a cosa serve. Un buon titolo è qualcosa come ‘Disabilita Heartbeat API’.

Quindi, nella sezione chiamata ‘Anteprima Codice’, devi incollare il codice che disabilita l'Heartbeat API.

Ecco il codice che devi copiare e incollare:

add_action( 'init', 'stop_heartbeat', 1 );
function stop_heartbeat() {
wp_deregister_script('heartbeat');
}

Copia semplicemente tutto quel codice.

Quindi, incollalo nella casella ‘Anteprima Codice’ in WPCode.

Aggiungere lo snippet di codice per disattivare l'API Heartbeat in WPCode

Puoi lasciare tutte le altre impostazioni sulla pagina così come sono.

Ora, per far funzionare il codice e disabilitare l'API Heartbeat, devi attivare lo snippet. Trova l'interruttore ‘Active’, impostalo sulla posizione On e quindi fai clic sul pulsante ‘Save Snippet’.

Attivare lo snippet WPCode per disattivare l'API Heartbeat

Fatto! Hai ora disabilitato con successo l'API Heartbeat sul tuo sito web utilizzando WPCode.

Se desideri riattivare l'API Heartbeat in futuro, puoi farlo facilmente semplicemente disattivando questo snippet di codice in WPCode. Torna ai tuoi snippet WPCode e disattiva questo. È un modo molto semplice per controllare l'API Heartbeat.

Speriamo che questo articolo ti abbia aiutato a imparare come limitare l'API heartbeat in WordPress. Potresti anche voler imparare come eseguire correttamente un test di velocità del sito web o vedere la nostra selezione di esperti dei migliori plugin di caching per WordPress per velocizzare il tuo sito web.

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

13 CommentsLeave a Reply

  1. Grazie per l'articolo dettagliato. Lo trovo facile da seguire e approfondisce anche per le persone che vogliono avventurarsi oltre. Per me, è importante che abbia smesso di avere errori nella console dopo aver sostituito il vecchio plugin e installato il plugin Dynamic Front-end Heartbeat! Il sito web si carica istantaneamente ora.

  2. Il battito cardiaco può avere un impatto sulla generazione di URL in WordPress? Ho disabilitato il battito cardiaco sul mio sito web utilizzando il plugin WP Rocket. Sfortunatamente, ho poi iniziato a riscontrare che WordPress si sarebbe "dimenticato" degli URL delle pagine, e ha iniziato a restituire un errore 404 per ogni pagina esistente. Ho sempre dovuto rigenerare i permalink. Tuttavia, l'errore è ricomparso dopo un po' di tempo. Alla fine, riattivare il battito cardiaco ha aiutato. Dopo di che, i problemi si sono fermati.

    • It should not unless there is something specific to your site that is using the Heartbeat API to generate the post URL.

      Amministratore

      • Yes, I do. I use Polylang for language mutations on the website. The issues occurred only in one language mutation, not in the other. I think the problem was in the URL because the English language mutation had “/en” in the URL, while the Czech mutation did not have this suffix at the end. Therefore, disabling the heart beat may have had such an effect. However, thank you for the response; at least I will know that I can disable the heart beat on another website without necessarily encountering such issues again.

  3. Also i am running a membership site and so many people will be logged in at the same time. Is it OK to disable it?

  4. Nice article with good information!!

    I want to use it for my site, but the plugin suggested by you, is not activated for a year. Please can you suggest something else.

  5. Yes!

    Thank you so much. My site crashed last night, and after a couple of hours on support with HostGator told me that I needed to solve this issue.

    Adding the plugin shaved two full seconds off homepage load time (4sec -> 1.9sec), and about 200kb off of total page size, and a 2-point bump in PageSpeed score.

    THANK YOU.

Lascia una risposta

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.