WordPress fa girare più del 40% del web, eppure la maggior parte dei siti WordPress non ha un canale diretto per far tornare i propri lettori. Le web push notifications risolvono esattamente questo: un lettore accetta le notifiche una volta, e da quel momento puoi raggiungerlo sul suo browser anche quando non è sul tuo sito, senza chiedergli l'email e senza passare da un algoritmo che decide se mostrargli o no il tuo contenuto.
In questa guida attiviamo le web push su un sito WordPress da zero, passo per passo. Tempo richiesto: una decina di minuti. Competenze richieste: saper incollare due righe di codice e caricare un file via FTP o file manager.
Cosa serve prima di iniziare
Tre prerequisiti, che quasi ogni sito WordPress moderno soddisfa già:
- Il sito deve essere in HTTPS. Le web push funzionano solo su connessioni sicure: è un requisito dei browser, non della piattaforma. Se il tuo sito è ancora in HTTP, questo è il momento di sistemarlo (il certificato è gratuito con Let's Encrypt e quasi ogni hosting lo attiva con un click).
- Accesso ai file del sito: FTP, il file manager dell'hosting, o un plugin che permetta di caricare file nella root.
- Un account su una piattaforma di web push. In questa guida usiamo Natom: il piano gratuito arriva a 1.000 iscritti con push illimitate, che per iniziare basta e avanza.
Passo 1: registra il sito sulla piattaforma
Crea l'account su natom.app/app, vai nella sezione Siti e aggiungi il tuo dominio (nome e indirizzo, nient'altro). La piattaforma genera due cose: uno snippet JavaScript identificato da una chiave unica del tuo sito, e un file chiamato natom-sw.js.
Quel file è il service worker: il componente che il browser installa per ricevere e mostrare le notifiche anche quando il tuo sito è chiuso. È il cuore tecnico di tutto il sistema, ed è anche il motivo del passo 3.
Passo 2: inserisci lo snippet nelle pagine
Lo snippet è un singolo tag script:
<script src="https://cdn.natom.app/push.js?k=LA-TUA-CHIAVE" async></script>
Su WordPress hai tre strade, dalla più pulita alla più rapida:
Opzione A: il tema (consigliata). Se usi un child theme, apri footer.php e incolla lo snippet prima della chiusura di </body>. È la soluzione più leggera: zero plugin aggiuntivi.
Opzione B: un plugin di inserimento codice. Plugin come WPCode o Insert Headers and Footers hanno un campo "footer scripts": incolli lo snippet lì e vale per tutte le pagine. Utile se non vuoi toccare il tema.
Opzione C: functions.php. Per chi preferisce il codice:
add_action('wp_footer', function () {
echo '<script src="https://cdn.natom.app/push.js?k=LA-TUA-CHIAVE" async></script>';
});
Qualunque strada scegli, il punto fermo è uno: lo snippet deve essere presente su tutte le pagine, perché ogni pagina è un'occasione di iscrizione.
Passo 3: carica il service worker nella root
Scarica natom-sw.js dalla dashboard (bottone Codice sulla riga del tuo sito) e caricalo nella root del dominio, cioè nella stessa cartella dove vive wp-config.php. A caricamento fatto, il file deve rispondere all'indirizzo:
https://tuosito.com/natom-sw.js
Aprilo nel browser per verificare: se vedi del codice JavaScript, è tutto a posto. Se vedi un errore 404, il file è nella cartella sbagliata (l'errore più comune è caricarlo dentro /wp-content/ invece che nella root).
Perché proprio nella root? Il browser concede al service worker il controllo solo sulle pagine "sotto" la sua posizione. Dalla root controlla tutto il sito; da una sottocartella controllerebbe solo quella.
Passo 4: configura il popup di iscrizione
Qui si gioca metà della partita. Il permesso notifiche del browser è prezioso e i browser puniscono chi lo chiede male: la richiesta nativa sparata in faccia al primo accesso viene rifiutata dalla stragrande maggioranza dei visitatori, e un rifiuto è per sempre (o quasi).
Per questo la piattaforma mostra prima un popup tuo, personalizzabile, e solo dopo il click la richiesta di sistema. Dal bottone Popup della dashboard configuri:
- testi e icona: parla il linguaggio del tuo sito ("Vuoi sapere quando esce una nuova ricetta?") invece del generico "questo sito vuole inviarti notifiche";
- ritardo di comparsa: qualche secondo di lettura prima di chiedere alza sensibilmente il tasso di accettazione;
- cooldown: se il lettore rimanda, il popup si ripresenta dopo N giorni, non a ogni pagina;
- colori e posizione, con anteprima live desktop e mobile.
Una regola d'oro dalla nostra esperienza: chiedi il permesso quando il lettore ha già ricevuto valore, non prima. Il momento migliore non è l'atterraggio, è la fine del primo articolo letto.
Passo 5: verifica e prima campagna
Apri il tuo sito in una finestra normale (non in incognito), accetta le notifiche dal popup, e controlla che nella dashboard il contatore iscritti del sito segni 1: sei tu. Poi usa il bottone Test push sulla riga del sito: se la notifica ti arriva sul desktop, la catena è completa.
A quel punto la prima campagna vera è un modulo da compilare: titolo (massimo ~60 caratteri visibili), testo breve, URL di destinazione, e volendo un'immagine. Invio immediato o programmato. Per approfondire il mestiere del copy c'è la nostra guida su come scrivere titoli di push che fanno cliccare.
Il passo in più che fa la differenza: le audience
Con lo snippet installato puoi fare subito una cosa che i lettori noteranno in meglio: taggare gli interessi. Una riga nel template della pagina articolo:
<?php foreach (get_the_category() as $cat): ?>
<script>natom.tag('cat_<?php echo sanitize_title_with_dashes($cat->slug, '', 'save') ?>', '1')</script>
<?php endforeach; ?>
Da quel momento chi legge sport si profila come lettore di sport, chi legge cucina come lettore di cucina, e potrai inviare a ciascuno solo i suoi temi. Il risultato tipico: CTR più alto e molte meno disiscrizioni. La guida completa è qui: audience e segmentazione.
Domande frequenti
Serve un plugin WordPress dedicato? No, ed è un vantaggio: niente plugin significa niente peso aggiuntivo sulle pagine, niente aggiornamenti da inseguire, niente conflitti. Lo snippet pesa pochi KB e arriva da CDN.
Funziona su iPhone? Su iOS le web push arrivano solo se l'utente ha aggiunto il sito alla schermata Home (limite imposto da Apple, identico per qualunque piattaforma). Su Android e desktop funzionano ovunque.
E se cambio tema? Se hai usato l'opzione A dovrai rimettere lo snippet nel nuovo tema; con l'opzione B (plugin) sopravvive al cambio. Il service worker nella root non è toccato dai cambi di tema.
Ho già un altro servizio di push, posso passare? Sì, e i tuoi lettori non vedranno nessun nuovo popup: il permesso appartiene al tuo dominio. La procedura completa è nella guida alla migrazione.
Dieci minuti di setup per un canale che, a differenza dei social, è tuo per sempre: nessun algoritmo in mezzo tra te e chi ha scelto di seguirti.