Come fare redirect 301 su WordPress

Reindirizza il traffico

Devi creare un redirect 301 in WordPress? Ci sono molti buoni motivi per utilizzare questa tecnica per inoltrare automaticamente gli utenti (e i web crawler) da un URL all’altro. Ogni webmaster di WordPress deve conoscere bene come funzionano i redirect, perché sono importanti e come impostarli. Non siete ancora arrivati a questo livello? Dopo questo articolo, lo sarete.

Guida all’impostazione dei redirect 301 su WordPress

Ecco cosa copriremo:

Cos’è un redirect 301?

Un redirect (o reindirizzamento) è un modo per inoltrare automaticamente un visitatore, sia esso una persona o un web bot, da una pagina all’altra da “dietro le quinte”. Mantiene felici gli utenti e i bot dei motori di ricerca.

A chi piacerebbe andare da qualche parte per trovare chiuso?
 

Quando un browser tenta di caricare una pagina che è stata configurata per il reindirizzamento, invece di restituire la pagina richiesta il server invia al browser una nuova posizione. Contemporaneamente, invia un codice che fornisce informazioni aggiuntive. Il codice, chiamato codice di stato HTTP, indica, ad esempio, se il reindirizzamento è permanente (redirect 301) o temporaneo (redirect 307). Solo il browser web vede questo codice; non viene visualizzato all’utente.

La maggior parte dei redirect sono redirect 301, che indicano che la vecchia pagina è stata definitivamente “mandata in pensione”. Per i webmaster di WordPress, i reindirizzamenti 301 sono i più importanti, quindi li tratteremo in dettaglio in questo articolo.

Torna all’inizio

Quando è necessario usare un redirect 301 in WordPress?

Ci sono molti casi per implementare un reindirizzamento 301 su un sito WordPress, ad esempio:

  • Si riprogetta il sito e alcuni URL cambiano.
  • Si rinomina un post (a volte WordPress si occuperà di questo per voi, ma non sempre).
  • Si trasferisce il proprio sito su HTTPS/SSL.
  • Cambiate la struttura di un vostro permalink o slug.
  • Per inoltrare gli utenti alla versione preferita del vostro sito web (con o senza www).

I reindirizzamenti assicurano che il visitatore arrivi alla pagina appropriata ed evitano un fastidioso messaggio di “Pagina non trovata”. Un reindirizzamento aiuta anche a trasferire il “succo SEO” e i backlink della vecchia pagina alla nuova.

Quando un web crawler, come Google, riceve un redirect 301, sa di dover aggiornare il suo indice per rimuovere l’URL della vecchia pagina e sostituirla con quella nuova.

Torna all’inizio

Come si crea un redirect 301 in WordPress?

Come per la maggior parte delle cose su WordPress, ci sono diversi modi per impostare i redirect 301. È possibile farlo con o senza plugin, dipende da ciò che preferisci.

Gli admin di WordPress spesso optano per il percorso senza plugin per risparmiare sulle spese generali, ma anche i plugin hanno i loro vantaggi. Questo articolo tratta i diversi modi in cui è possibile impostare un redirect 301. I metodi più comuni sono:

  • Modificando il file .htaccess del vostro sito
  • Tramite modifiche PHP
  • Attraverso un plugin di WordPress

Torna all’inizio

Come creare un redirect 301 in WordPress senza un plugin.

Mentre l’utilizzo di un plugin per implementare i reindirizzamenti potrebbe essere il percorso facile e veloce, ogni plugin attivato sul vostro sito aggiunge un po’ più di overhead di elaborazione.

Più overhead = sito più lento.

Anche i plugin devono essere mantenuti aggiornati. Volete davvero un altro plugin da aggiornare?

Se volete impostare un redirect 301 senza plugin, avete due opzioni: il file .htaccess del tuo sito e le modifiche al PHP del tuo tema.

Come fare un redirect 301 su WordPress in .htaccess.

Un file .htaccess è un file di testo semplice da utilizzare per apportare modifiche di configurazione che influiscono sul modo in cui il vostro server web consegna le vostre pagine. È una cosa da server web Linux/Apache. La maggior parte dei web hosting al giorno d’oggi funziona su Linux, e se il vostro piano di hosting è un piano Linux, molto probabilmente è in esecuzione Apache e avete il potere del file .htaccess a portata di mano.

Un sito web può avere più di un file .htaccess, ma di solito ce n’è uno situato nella root (livello superiore, spesso chiamato public_html) del sito. È stato creato quando avete installato WordPress. Se avete installato WordPress in una sottodirectory, come /blog, il file .htaccess potrebbe essere lì.

La creazione di un redirect 301 WordPress nel vostro file .htaccess funziona bene, ma create sempre una copia di backup prima di effettuare qualsiasi modifica.

Ciò che si inserisce in un file .htaccess di livello root influirà sull’intero sito. Ecco perché la creazione di reindirizzamenti 301 in .htaccess funziona così bene. Potete modificare il file con qualsiasi editor di testo, il che rende l’aggiornamento del proprio file .htaccess molto più accessibile.

Prima di toccare un file .htaccess, fate una copia di backup! Se introducete un errore di battitura nel file .htaccess del vostro sito, il vostro sito farà “boom” verrà fuori il messaggio di errore del server interno 500. Si può risolvere facilmente se si dispone di un backup, ma altrimenti è una seccatura.

Un comando di reindirizzamento .htaccess di base assume il seguente formato:

Redirect [status] [URL-path] URL

Esempi di reindirizzamento .htaccess 

Ecco alcuni esempi di scenari di reindirizzamento comuni:

Reindirizzamento ad una pagina sullo stesso host
Redirect 301 /vecchiapagina.html /nuovapagina.html

Reindirizzare ad una pagina su un altro host
Redirect 301 /vecchiapagina.html https://www.esempio.com/nuovapagina.html

Reindirizzare l’intero sito WordPress su un nuovo sito
Redirect 301 / https://www.ilnuovosito.com/

Potete impilare tutti i reindirizzamenti di cui avete bisogno nel vostro file .htaccess.

Modifica del file .htaccess tramite cPanel

È possibile modificare .htaccess tramite cPanel. Ecco come fare, passo dopo passo:

  1. Accedete a cPanel.
  2. Andate sotto la sezione File e cliccate sull’icona File Manager.

Redirect 301 wordpress: cpanel

  1. Nella finestra popup, selezionate la Root del documento per il sito su cui state lavorando e assicuratevi di aver selezionato Mostra file nascosti.

Si noti che alcune versioni di File Manager potrebbero avere un’interfaccia leggermente diversa ma richiedono le stesse selezioni di impostazione. Se la finestra sottostante non si apre automaticamente quando si fa clic su File Manager, cercate un’icona Impostazioni e fate clic su di essa per raggiungere queste impostazioni.

Redirect 301 wordpress cPanel_ mostra file nascosti

  1. CercaTe il file .htaccess e fate clic con il tasto destro del mouse su di esso. Dal menu a tendina che appare, selezionate Modifica.
  2. A questo punto vi troverete nell’editor di testo, dove potrete effettuare e salvare le modifiche.

Torna all’inizio

Creare di un redirect 301 con il codice PHP.</3>

Se si preferisce aggiungere i redirect senza usare un plugin o modificare il proprio .htaccess, si può scegliere di codificare manualmente i redirect nel PHP del proprio tema WordPress. Questa è l’opzione più avanzata.

Anche se è possibile aggiungere codice direttamente al file header.php, è meglio inserirlo nel file functions.php e utilizzare un hook di WordPress. In questo modo non si alterano i file di base e si possono mantenere le modifiche in un unico posto.

Dovreste anche usare un tema child di WordPress per fare le vostre modifiche. Altrimenti, se si aggiorna il tema, le modifiche saranno sovrascritte e perse.

sintassi wp_redirect

Il codice PHP di WordPress per reindirizzare una pagina è strutturato in questo modo:

wp_redirect( ‘http://ilmiosito.com/nuovopost’, 301 );

exit;

http://ilmiosito.com/nuovopost è l’URL a cui si vuole reindirizzare. 301 è il codice di stato da utilizzare. La dichiarazione di uscita è obbligatoria.

Poiché il codice in functions.php viene eseguito su ogni pagina, è necessario avvolgere il redirect in un requisito condizionale se si vuole reindirizzare solo un URL specifico. Per esempio:

if($_SERVER['REQUEST_URI']=="/somedir/una_pagina_che_vuoi_reindirizzare")
{
wp_redirect( 'http://ilmiosito.com/nuovopost', 301 );
exit;
}

Si noti che la richiesta URI sarà tutto ciò dopo il vostro nome a dominio. Quindi nell’esempio seguente, la stringa URI di richiesta da utilizzare sarebbe tutto in grassetto.

http://imiosito.com/somedir/unpost

Come modificare il file functions.php in WordPress

Nota dell’editor: Modificare i file del tema tramite /wp-admin/ è rischioso. Un codice scadente potrebbe impedire il caricamento di WordPress, che poi vi impedisce di fissare il codice. Si consiglia di effettuare le modifiche tramite SFTP su un sito di staging. I siti di staging “one-click” sono una caratteristica dei nostri piani di Hosting WordPress.

È possibile aggiungere il codice di reindirizzamento a functions.php attraverso il pannello di controllo Admin. Dal pannello di controllo Admin, selezionate Aspetto, quindi dal sottomenu, selezionare Editor. Nella parte destra dello schermo verranno elencati i file che è possibile modificare. Selezionate Funzioni del tema (Functions.php).

Scorrere fino alla parte inferiore del file e inserire il frammento di codice. Poi cliccate sul pulsante Aggiorna file per salvare le modifiche.

Visitate la vecchia pagina e controllate che il reindirizzamento funzioni.

Ancora una volta, un errore qui può abbattere il vostro sito, quindi fate attenzione!

Torna all’inizio

Plugin per fare redirect 301 su WordPress.

Il modo più indolore per aggiungere un redirect 301 su WordPress è tramite un plugin. Ci sono molti plugin che si occuperanno di questo per voi. Le opzioni principali includono:

  • Redirection di John Godfrey (gratuito)
  • Simple 301 Redirects (gratuito)
  • Yoast SEO (versione premium)

Redirection

Questo plugin gratuito ha più di 1 milione di installazioni attive per una buona ragione – è semplice e fa bene il suo lavoro.

Redirection gestisce tutto, dai redirect di base ai quelli basati su condizioni particolari, come lo stato di login dell’utente, il tipo di browser, il referrer o altre condizioni. Questo plugin tiene traccia anche di tutti gli errori 404 (Pagina non trovata) sul tuo sito.

Una volta installato e attivato (Plugin > Aggiungi nuovo), si troverà sotto Strumenti > Redirect. Per aggiungere un nuovo redirect basta inserire un URL sorgente e un URL di destinazione.

Simple 301 Redirects

Il plugin Simple 301 Redirects è un’altra grande opzione. Non offre tante funzioni quante Redirection, ma è semplice e funziona senza problemi. Una volta installato e attivato (Plugin > Aggiungi nuovo), si trova sotto Impostazioni > Redirect 301. Da lì, è possibile aggiungere facilmente gli URL di origine e di destinazione.

Creare un redirect 301 con Yoast SEO.

Se il vostro sito web è uno dei milioni che utilizzano Yoast SEO, vi starete chiedendo se offre una funzione di reindirizzamento. La risposta è sì – se avete la versione premium.

Gli utenti Premium troveranno un’ulteriore voce di menu “Redirect” sotto il menu principale SEO che è stato creato quando avete installato Yoast SEO. Cliccandoci sopra si accede ad una schermata dove è possibile selezionare il tipo di reindirizzamento, il vecchio URL e il nuovo URL.

Correlato: 14 passi per impostare Yoast SEO per WordPress

Torna all’inizio

Conclusioni e passi successivi

Ci sono ancora più modi per aggiungere redirect 301 al tuo sito web. Ad esempio, se hai spostato l’intero sito, puoi inoltrare automaticamente i visitatori dal tuo vecchio dominio aggiungendo la stringa sottostante al file header.php del tuo tema sul vecchio sito:

php header ("HTTP/1.1 301 Moved Permanently"); header("Location: 
http://www.iltuonuovosito.com");

Quale percorso si sceglie è una questione di preferenza. I plugin offrono un’interfaccia semplice e veloce che molti preferiscono. Tuttavia, se non volete aggiungere altri plugin al vostro sito, .htaccess potrebbe essere il percorso migliore per voi. La modifica diretta dei file PHP del vostro sito dovrebbe essere riservata agli utenti avanzati.

Potete sempre controllare se un redirect 301 funziona andando direttamente su quella pagina e vedendo dove si va a finire.

Se un nuovo redirect non funziona, e avete già visitato la pagina in precedenza, provate a cancellare la cache del vostro browser perché la pagina potrebbe essere caricata dalla memoria.

È anche possibile utilizzare un controllore di stato HTTP per scoprire esattamente quali codici di stato il vostro sito sta restituendo per qualsiasi URL.

Prendere il tempo necessario per impostare i redirect 301 in WordPress è sicuramente utile. Migliorerete l’esperienza dell’utente del vostro sito e impedirete che i vecchi link morti influiscano negativamente sul ranking dei motori di ricerca per cui avete lavorato così duramente.

Pronti a iniziare con WordPress? Provate Hosting WordPress di GoDaddy. È la soluzione perfetta per chiunque voglia la potenza e la semplicità di WordPress senza il fastidio di continui aggiornamenti e aggiustamenti tecnici.