Blog - Ultime notizie
Wordpress – Come Reindirizzare Sempre L’homepage Ad Una Landing Statica

WordPress – come reindirizzare sempre l’homepage ad una landing statica

Tutti i giorni ho modo di confrontarmi con i maggiori CMS in uso attualmente e devo cercare soluzioni che accontentino il cliente, ma anche non vadano a danneggiare quello che è stato fatto e in questo caso mi riferisco ai tracciamenti GA4 e per le campagne ADV.

Stavolta mi è stato chiesto di reindirizzare la prima visita di un sito ad una landing page già pronta, creata in una sottocartella, in php e completamente custom, quindi indipendente dalle regole di WordPress con cui era stato costruito il sito a suo tempo.

Per gestire i reindirizzamenti in WordPress e far sì che un utente alla sua prima visita venga reindirizzato alla landing page statica, puoi utilizzare i cookie o la sessione per tracciare se l’utente ha già visitato il sito.

Soluzione con Cookie (più affidabile)

Modifica il file functions.php del tema attivo e aggiungi questo codice:

function redirect_first_time_visitors() {
    if (!isset($_COOKIE['first_visit'])) {
        setcookie('first_visit', '1', time() + (365 * 24 * 60 * 60), "/"); // Scade dopo 1 anno
        wp_redirect('/landing/'); // Cambia con il percorso della tua landing page
        exit;
    }
}
add_action('template_redirect', 'redirect_first_time_visitors');

Come funziona?

✅ Controlla se esiste un cookie first_visit
✅ Se non esiste, lo imposta e reindirizza alla landing page
✅ Se esiste, l’utente può navigare normalmente nel sito

Reindirizzamento dalla Landing al Sito

Nella tua pagina landing.html, imposta un pulsante che riporti l’utente al sito principale:

<a href="/" class="btn">Entra nel sito</a>

Se vuoi cancellare il cookie quando l’utente entra nel sito, puoi farlo con JavaScript:

<a href="/" class="btn" onclick="document.cookie='first_visit=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;'">Entra nel sito</a>

Altre Opzioni

Se il sito ha caching aggressivo, il metodo con i cookie potrebbe non funzionare subito. In quel caso, puoi usare sessioni PHP invece:

function start_session() {
    if (!session_id()) {
        session_start();
    }
}
add_action('init', 'start_session');

function redirect_first_time_visitors() {
    if (!isset($_SESSION['first_visit'])) {
        $_SESSION['first_visit'] = true;
        wp_redirect('/landing/');
        exit;
    }
}
add_action('template_redirect', 'redirect_first_time_visitors');

Redirezione della sola home del sito

Però questo script redirige l’intero sito alla prima visita e non solo la homepage.
Ecco lo script corretto che assicura che solo la homepage in italiano (/) e in inglese (/en/) rediriga alla landing page alla prima visita.

//Script aggiornato (functions.php)
function redirect_first_time_visitors() {
    // Controlla se il cookie esiste
	if (!isset($_COOKIE['first_visit']) && (is_front_page() || is_home())) {
        // Imposta il cookie per 1 anno
        setcookie('first_visit', '1', time() + (365 * 24 * 60 * 60), "/");
            wp_redirect('/landing/'); // Sostituisci con il percorso della tua landing page
            exit;
        }
    }
}
add_action('template_redirect', 'redirect_first_time_visitors');

Come Funziona?

✅ Controlla se l’utente ha già il cookie first_visit.
✅ Se non ce l’ha, lo imposta e controlla se si trova sulla homepage italiana (/) o inglese (/en/).
✅ Se è su una di queste due homepage, lo reindirizza alla landing.
✅ Se ha già il cookie, può navigare normalmente nel sito.

Redirect di ogni visita della home alla landing

Per questioni di cache, purtroppo non sempre lo script qui sopra funzionava bene. E il fatto che fosse settato il cookie non permetteva al cliente di aver il polso del reindirizzamento. Lo vedeva una volta e poi si chiedeva come mai non lo vedesse più. Quindi ho fatto in modo che ad ogni accesso alla homepage (anche se era seguente alla navigazione di pagine più profonde del sito) venisse rediretta la visita alla landing.

Ecco la versione aggiornata dello script nel functions.php con il wp_redirect() impostato con redirezione della home alla landing:

function redirect_first_time_visitors() {
    if ((is_front_page() || is_home()) && !isset($_GET["landing"])) {
		
		// URL di destinazione
		$redirect_url = '/landing/';
		
        wp_redirect($redirect_url,307);
        exit;
    }
}
add_action('template_redirect', 'redirect_first_time_visitors');

Come funziona?

✅ Controllo se la pagina in cui atterro è la home o esiste il parametro landing
✅ Se sono in home e non ho il parametro landing allora vengo rediretto alla landing

Va da sè che la landing deve contenere un link alla home del sito in questo modo:

<a href="/?landing=true" class="btn">Entra nel sito</a>

Redirect e query string

Come dicevo all’inizio, il cliente mi ha chiesto una cosa, ma non posso evitare di metterci del mio e capire che se redirigo tutte le visite della home alla landing molto probabilmente lato tracciamenti mi perdo qualcosa.
Effettuare un redirect secco nella home o in ogni pagina del sito comporta che per GA4 ogni visita proviene da diretto, perchè mi toglie tutti i parametri Gclid, UTM o Fbclid o qualsiasi altro parametro impostato nelle campagne di mail marketing, per dirne una.
E’ importante capire che è necessario portare i suddetti parametri anche alla landing, perchè anche nella landing deve essere installato GTM.

Soluzione aggiornata con il mantenimento di UTM e GCLID

function redirect_first_time_visitors() {
    if ((is_front_page() || is_home()) && !isset($_GET["landing"])) {
		// Prende i parametri UTM e GCLID
		$query_params = $_SERVER['QUERY_STRING'];
		
		// URL di destinazione
		$redirect_url = '/landing/';
		
		// Se ci sono parametri, li aggiunge all'URL
		if (!empty($query_params)) {
			$redirect_url .= '?' . $query_params;
		}
        wp_redirect($redirect_url,307);
        exit;
    }
}
add_action('template_redirect', 'redirect_first_time_visitors');

Come funziona?

✅ Legge i parametri UTM e GCLID dalla query string di $_SERVER[‘QUERY_STRING’]
✅ Li aggiunge alla URL della landing page per mantenerli nel reindirizzamento
✅ Esegue il redirect 307 senza perdere i dati originali

Esempio:

Se un utente arriva su:
👉 https://example.com/?utm_source=google&utm_medium=cpc&gclid=123ABC
verrà reindirizzato a:
👉 https://example.com/landing/?utm_source=google&utm_medium=cpc&gclid=123ABC

🔹 Funziona anche senza parametri: Se non ci sono UTM/GCLID, il redirect avviene normalmente verso /landing/ senza query string vuota.

Test & Debug

Se hai un plugin di caching attivo, potresti dover escludere la homepage dalla cache per garantire che il codice venga eseguito correttamente.

0 commenti

Lascia un Commento

Vuoi partecipare alla discussione?
Sentitevi liberi di contribuire!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Contattami se ti servono informazioni relative a Wordpress - come reindirizzare sempre l'homepage ad una landing statica




    Servizi correlati

    La mia conoscenza del CMS Wordpress

    La mia conoscenza del CMS Wordpress

    Sviluppo siti internet in Wordpress da almeno 15 anni e in questo tempo ho avuto modo di personalizzarlo in ogni modo, in ambito di vendita o di lead generation

    Conoscenza di CMS

    Conoscenza di CMS

    I principali CMS che conosco sono: Wordpress, Drupal, Prestashop, Magento. In questa breve lista li ho messi in ordine di esperienza acquisita.

    Altri servizi

    Sviluppo di siti internet

    Sviluppo di siti internet

    Nel corso degli anni ho acquisito un’ottima conoscenza dello sviluppo di siti web. Ho lavorato su un’ampia gamma di progetti che mi hanno richiesto di sviluppare diverse competenze. Ho lavorato a piccoli siti web con solo una o due pagine,...

    Invio email, gestione, creazione

    Invio email, gestione, creazione

    Gli strumenti per l’invio dei messaggi elettronici sono molti e tutti diversi. Alcuni mettono a disposizione molti strumenti, altri meno. Alcuni sono flessibili, altri meno. E comunque può succedere che l’email non arrivi al destinatario per i molteplici motivi: DKIM,...

    Creazione di Landing Page

    Creazione di Landing Page

    La landing page è una pagina specifica che viene raggiunta da un visitatore dopo aver cliccato solitamente su un link o su un annuncio pubblicitario. E’ strutturata in modo da espandere l’argomento trattato nel link o annuncio e per convertire...

    Conoscenza di CMS

    Conoscenza di CMS

    I principali CMS che conosco sono: Wordpress, Drupal, Prestashop, Magento. In questa breve lista li ho messi in ordine di esperienza acquisita.

    Social Network, Google Merchant

    Social Network, Google Merchant

    Come usare i social network in modo da rendere in tuo sito internet interconnesso ad essi. Invio di articoli ai Social Network, invio prodotti attraverso i feed, Google Merchant.

    API

    API

    Uso e gestione delle varie librerie Api esistenti: Google Analytics, Google Maps, Fatture in cloud, Sendowl, Ebay, Amazon, ecc.. Lettura di dati tramite JSON, ecc…

    Moduli e GDPR

    Moduli e GDPR

    GDPR, Privacy policy, cookie policy, moduli per la raccolta dei dati conformi allo standard della privacy policy, analisi e determinazione di quello che serve per essere in regola col regolamento GDPR.

    Tutti i prodotti Google

    Tutti i prodotti Google

    Uso quotidianamente tutti i prodotti Google e ne sperimento le loro potenzialità. Tutti i giorni ho a che fare con Gmail, Gsuite, Google Analytics, Google Tag Manager, Google Search Console, Drive, Youtube, My Business, Maps, Documenti, Fogli (Google Sheet), Presentazioni,...

    Standard di sicurezza

    Standard di sicurezza

    Valutare se un sito è stato bucato o meno, quali standard di sicurezza usare per evitare che questo succeda di nuovo. Applicare il certificato HTTPS alla navigazione e fare in modo che tutte le url vengano redirette in navigazione sicura,...

    Servizi di Hosting

    Servizi di Hosting

    Ti trovi con un sito internet già portato a termine ma che sembra lento, poco navigabile (in termini di velocità) o a volte ti trovi schermate di errore (solitamente di memory limit) che non sai come interpretare, ma che spariscono...

    Gestire un sito web

    Gestire un sito web

    Hai commissionato un sito web, con gallerie fotografiche, slide show, animazioni JQuery e lo lasci invariato per anni? Pensi che il tuo biglietto da visita in internet debba rimanere statico come la brochure che hai fatto stampare e che viene...

    Hai un problema con il web?

    Il tuo sito internet non vuole funzionare? Vuoi rinnovarlo o sistemarlo? Hai un’idea di integrazione ma non sai se è possibile realizzarla o meno?

    Testimonianze

    Ho avuto il piacere di collaborare con Sara in diversi miei progetti. Ho sempre apprezzato la cura e l’impegno con cui prende in carico i suoi compiti. Tra le sue doti migliori spiccano la puntualità e la disponibilità nel risolvere questioni non prettamente attinenti alla sua area…

    Incredibile mente. Non conosce sosta finchè la problematica non viene risolta. Ha trasformato il mio sito vetrina costruito con un CMS desueto in un Ecommerce Drupal + Ubercart. I prodotti sono stati importati nel nuovo CMS attraverso un import e un crawler interamente scritto a mano.

    Stavo avendo problemi con la Web Agency a cui mi ero affidato. Mi avevano promesso un sistema di booking online completamente personalizzato. Ma non riuscivano a portarlo a termine. Per fortuna, ad un certo punto del progetto, è intervenuta Sara, che lo ha portato a termine.

    Skills in cui sono forte

    PHP8
    Html5
    Sviluppo web
    Google Analytics
    API di qualsiasi tipo
    Google Tag Manager
    jQuery
    Css3
    Trasferimento e acquisto domini
    Wordpress
    Drupal

    Recensioni

    Lasciami una recensione

    Pre Footer

    Questo QR Code ti permette di lasciarmi una recensione in maniera facile e veloce.

    Altrimenti qui sotto ti lascio un bottone, con il quale puoi lasciare la recensione direttamente su Google My Business.