Spostare un blog WordPress dalla sottodirectory alla root (per ottenere, ad esempio, che il blog abbia come indirizzo non più
http://labandabassotti.it/blog ma solo
http://labandabassotti.it) non è un’impresa così difficile come potrebbe sembrare a prima vista; occorre comunque molta attenzione. Soprattutto, bisogna essere davvero convinti di quello che si sta facendo, riflettere e prendere tutte le precauzioni prima di affrontare un passo del genere.
Riflessione: sei sicuro di fare la cosa giusta?
Prova a leggere questo articolo: Pubblicare un Blog sulla Root o in una Sottodirectory? Ti farà riflettere su aspetti di cui forse non sei a conoscenza.
Precauzioni:
Oltre ai soliti backup, quando ci si appresta a fare un cambiamento così importante e delicato conviene prendere anche qualche altra precauzione più specifica:
Aggiornamento: aggiorna WordPress all’ultima versione disponibile.
Aspetta un momento di ‘quiete’: cioè aspetta di fare questa operazione in un momento in cui il tuo blog è stabile, funziona bene e non ha appena subito altri importanti cambiamenti, altrimenti, in caso di problemi potresti non essere più in grado di stabilire con certezza se siano dovuti al trasferimento nella root o ad altre cause.
Backup del database: ci sono vari modi di farlo (entrando in PhpMyAdmin, esportando un file XML da WordPress>Strumenti>Esporta, servendosi di un plugin…); la cosa migliore e farlo in tutti i modi che conosci, perché… non si sa mai quello che può succedere nel momento in cui dovessi importarlo.
Backup di tutti i file e cartelle WordPress: via FTP è un attimo. Assicurati di aver fatto la copia di *tutti* (ma proprio TUTTI) i file, compreso .htaccess, index.php, wp-config.php, ecc.
Il trasferimento, in pratica
La buona notizia è che non è necessario reinstallare WordPress; basta seguire questo procedimento. IMPORTANTE: Non devi spostare i file e le cartelle di WordPress finché non hai svolto completamente il punto 1.
Entra nell’area di amministrazione del tuo blog e vai in Impostazioni>Generale. Qui devi cambiare gli indirizzi presenti nei campi “Indirizzo WordPress (URL)” e “Indirizzo del sito (URL)”, mettendo il nuovo indirizzo corrispondente alla root; ad esempio, se adesso il tuo blog ha un indirizzo del tipo
http://labandabassotti.it/blog, dovrai inserire in entrambi i campi il nuovo indirizzo
http://labandabassotti.it. Questo sarà l’indirizzo che avrà il tuo blog quando avrai completato il processo di trasferimento nella root.
Se i campi suddetti risultano non modificabili (tipicamente sono colorati di grigio), allora la soluzione è andare a modificarli nel database; devi accedere a PhpMyAdmin e visualizzare la tabella wp_options; qui vai a modificare gli url dei campi siteurl e home (questo è parecchie righe più avanti, forse dovrai scorrere la seconda pagina), inserendo in entrambi i casi l’indirizzo di root (
http://labandabassotti.it). N.B.: Non tentare di visualizzare o accedere al tuo blog adesso; devi aspettare.
Adesso (e solo adesso, non prima di aver svolto il punto 1) sposta i file e le cartelle di installazione di WordPress dalla sottodirectory alla root.
Accedi a Impostazioni>Permalink e controlla che tutto sia come lo avevi settato in precedenza; poi clicca su “Salva le modifiche” anche se non hai modificato niente. Questo passaggio serve ad evitare di visualizzare messaggi di errore quando aprirai gli articoli del blog.
Accedi a Impostazioni>Media e controlla che il percorso della cartella in cui verranno caricati i file sia quello nuovo, non quello della vecchia posizione; clicca su “Salva le modifiche”. Questo evita che i file che caricherai da adesso in avanti finiscano in un percorso sbagliato.
Ora puoi visualizzare il blog; controlla che i post, le pagine, gli archivi, gli indici delle categorie e dei tag siano accessibili.
Molto probabilmente dopo il trasferimento noterai la presenza di parecchi link rotti: quelli più evidenti sono quelli che puntano alle immagini che dovrebbero caricarsi all’interno degli articoli. E’ necessario, quindi, aggiornare gli url alla nuova posizione; farlo manualmente all’interno dei singoli post sarebbe un lavoro immane; meglio farlo all’interno del database. Per farlo, si può operare una sostituzione (del tipo “trova-sostituisci”, come si farebbe in un qualsiasi file testuale) al file esportato dal database e poi ricaricarlo. Oppure si possono lanciare delle query direttamente all’interno di PhpMyAdmin:
Questo codice serve ad aggiornare i permalink:
UPDATE wp_posts SET guid = REPLACE (
guid,
'http://labandabassotti.it/blog',
'http://labandabassotti.it');
Questa query aggiorna gli url all’interno dei post:
UPDATE wp_posts SET post_content = REPLACE (
post_content,
'http://labandabassotti.it/blog',
'http://labandabassotti.it');
N.B.: Ovviamente quando lanci le query sostituisci labandabassotti.it/blog con il vecchio indirizzo del tuo blog, e labandabassotti.it con il nuovo indirizzo . Inoltre stai attento al prefisso; se le tue tabelle hanno un prefisso diverso da wp, allora wp_posts è da sostituire con iltuoprefisso_posts. Se non metti il prefisso giusto, ti apparirà un messaggio di errore quando lanci la query.
Veniamo ora al redirect; è necessario farlo per non perdere i visitatori che tentano di accedere al sito con i vecchi url. Il redirect si può fare direttamente nel file .htaccess, ma penso sia più comodo usare un plugin come Redirection Plugin. Dopo averlo installato, vai in Strumenti>Redirection; ci sono due campi, riempili con le stinghe qui indicate:
“Url di partenza”: /blog/(.*)
(Al posto di “blog” metti il nome della vecchia cartella in cui avevi installato wordpress prima del trasferimento).
“Url di arrivo”: /$1
Ora premi il pulsante “Crea reindirizzamento”; se provi ad accedere al vecchio link, dovresti essere automaticamente reindirizzato al nuovo link.
Ultimo passo da fare è controllare i feed: probabilmente bisognerà aggiornare gli indirizzi; fai delle verifiche e, in via cautelativa, avverti i tuoi lettori che qualcosa potrebbe non funzionare; invita anche loro ad assicurarsi di ricevere i feed e, eventualmente, a reiscriversi.
Tieni d’occhio la situazione attraverso i tuoi strumenti di analisi del sito per individuare eventuali link rotti o sospetti cali delle visite.