Come cambiare gli url di WordPress dal database

In questo tutorial ti presenterò 4 metodi per modificare gli URL del tuo sito WordPress.

Go to the profile of  Jacopo Kahl
Jacopo Kahl
5 min di lettura
Come cambiare gli url di WordPress dal database

Può capitare che durante la migrazione di un sito, causa cambio nell'idea del progetto o modifica della directory del vostro sito, che sia necessario modificare gli URL.

Questa modifica rende necessario un cambio di tutti gli URL all'interno del database, modifica che coinvolge diverse tabelle del database.

In questa guida ti presenterò 4 metodi per modificare gli URL del tuo sito WordPress:

1- Modifica manuale per piccoli siti web

2- Cambiare gli URL da database

3- Cambiare gli URL del database da PHPMyAdmin

4- Utilizzare un plugin WordPress per modificare gli URL

Per i siti di piccole dimensioni la modifica degli URL può essere gestita anche manualmente, mentre per portali più grandi e complessi il numero di modifiche che dobbiamo effettuare diventa molto più difficile da gestire manualmente.

Inoltre modificare migliaia o più link diventa oneroso in termini di tempo per ogni webmaster, risultando una procedura con rischio di creare broken link ed errori nell'indicizzazione del sito.

Per poter gestire al meglio questo tipo di procedure serve una soluzione automatizzata che riesca a generare la modifica attraverso una tecnica di ricerca e modifica massiva degli URL.

Quando cambiare gli URL di WordPress?

Questo tipo di procedura si rende necessaria quando ad esempio facciamo una migrazione del sito WordPress verso un nuovo dominio, oppure quando cambiamo protocollo da http verso https.

Un altro motivo per cui potremmo trovarci nella soluzione di voler cambiare gli URL, è quella dello spostamento delle directory del nostro sito WordPress, ad esempio da www.sito.it a www.sito.it/nuovo.

Inoltre come menzionato prima, se pensiamo ad un blog con molti post e link interni, fare questo tipo di modifiche manualmente implica errori nell'indicizzazione che potrebbero comportare la perdita di visitatori!

Per questo motivo nel caso in cui dovessimo modificare gli URL di molti link, l'unica soluzione è quella di automatizzare il processo attraverso il database.

Prima di procedere con questa modifica, vi consiglio vivamente di effettuare un backup completo del vostro sito.

1- Modifica manuale per piccoli siti web

Per i siti WordPress di piccole dimensioni, possiamo operare per un cambio manuale degli URL all'interno del sito web. Puoi operare cercando i link all'interno delle pagine e procedere con la modifica.

Questa tecnica è consigliata quando operate su siti vetrina o su singola pagina. Questo vi eviterà di toccare il database o di installare inutilmente un plugin per la modifica degli URL.

2- Cambiare gli URL da database

Gli URL sono memorizzati in diverse tabelle all'interno del database e possono essere modificati manualmente. Gli URL delle voci di menu li troviamo nel campo meta_value all'interno della tabella wp_postmeta.

Gli URL delle immagini invece si trovano all'interno del campo posts_content della tabella wp_posts.

Di seguito un breve elenco dei campi dove è possibile trovare gli URL da modificare:

  • URL all'interno di pagine e post: campo post_content nella tabella wp_posts
  • URL del vecchio link manager: campi link_url e link_image nella tabella wp_links
  • URL degli elementi di menu: campo meta_value nella tabella wp_postmeta
  • Opzioni, temi e plugin: campo option_value nella tabella wp_options
  • URL dei commenti: campo comment_content della tabella wp_comments

Puoi effettuare l'aggiornamento degli URL modificando direttamente i valori all'interno dei campi. Anche questo metodo risulta comunque oneroso in termini di tempo e pericoloso se non si fa attenzione a quello che andiamo a modificare.

3- Cambiare gli URL del database da phpMyAdmin

MySQL ci consente di eseguire delle queries per trovare e sostituire vecchi URL all'interno del nostro database. Eseguire delle queries è un metodo pratico e veloce per cambiare grosse quantità di URL in maniera automatica, metodo molto comodo sopratutto quando ci troviamo di fronte ad un sito web di grandi dimensioni.

Per poter fare questa operazione ci viene in aiuto phpMyAdmin, che ci consente di fare un aggiornamento rapido di tutti i link presenti sul nostro sito web, aggiornando le vecchie URL nel database di WordPress.

Per poter far questo devi prima accedere al database MySQL su phpMyAdmin. Nel caso non vi ricordiate come utilizzare phpMyAdmin vi consiglio di leggere questa guida.

Una volta effettuato l'accesso a phpMyAdmin, scegliete il database WordPress dove volete cambiare gli URL e cliccate su SQL.

Fig. 1 Schermata phpMyAdmin dove eseguire le queries

Per poter cambiare gli URL potete inserire le seguenti righe di codice, assicurandovi di modificare gli URL.

Ad esempio:
'https://vecchioURL.it', 'https://nuovoURL.it', il primo dovrà contenere gli URL che volete cambiare, mentre il secondo valore sarà quello relativo al nuovo URL.

UPDATE wp_options SET option_value = replace(option_value, 'https://vecchioURL.it', 'https://nuovoURL.it') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET post_content = replace(post_content, 'https://vecchioURL.it', 'https://nuovoURL.it');

UPDATE wp_postmeta SET meta_value = replace(meta_value,'https://vecchioURL.it', 'https://nuovoURL.it');

UPDATE wp_usermeta SET meta_value = replace(meta_value, 'https://vecchioURL.it', 'https://nuovoURL.it');

UPDATE wp_links SET link_url = replace(link_url, 'https://vecchioURL.it', 'https://nuovoURL.it');

UPDATE wp_comments SET comment_content = replace(comment_content , 'https://vecchioURL.it', 'https://nuovoURL.it');

Nel caso aveste dei link a delle immagini all'interno dei post, potrete cambiare anche quelli inserendo le seguenti queries:

  • Questa permette di cambiare le immagini dentro i post
UPDATE wp_posts SET post_content = replace(post_content, 'https://vecchioURL.it', 'https://nuovoURL.it');
  • Questa permette di cambiare i link alle immagini con il vecchio link manager
UPDATE wp_links SET link_image = replace(link_image, 'https://vecchioURL.it', 'https://nuovoURL.it');
  • Questa cambia i link alle immagini come allegato
UPDATE wp_posts SET guid = replace(guid, 'https://vecchioURL.it', 'https://nuovoURL.it');

Una volte inserite le queries cliccate sul pulsante Esegui ed attendete il messaggio di conferma.

Gli URL adesso sono aggiornati!

NB: Le queries qui presentate fanno riferimento alle tabelle di default di WordPress! Potrebbe essere necessario aggiornare gli URL anche di relativi plugin installati. Nel caso di dubbi consiglio sempre di far riferimento alla documentazione ufficiale del plugin che volete modificare.

4- Utilizzare un plugin WordPress per modificare gli URL

Nel caso voleste utilizzare un plugin per poter fare questa operazione di cambio degli URL di WordPress, vi consiglio di utilizzare il plugin WP Migrate DB Plugin.

Questo plugin vi permette di esportare il database come dump di dati MySQL, trovando e sostituendo gli URL e i percorsi dei file, salvando poi il tutto come file SQL.

Per completare la migrazione sarà poi necessario utilizzare phpMyAdmin (visto in precedenza), per importare il file SQL nel database, sostituendo così quello esistente.

Fig. 2 Schermata phpMyAdmin dove importare il file SQL

Il plugin è presente anche in una versione PRO con funzionalità aggiuntive.

Vuoi approfondire l'argomento? 🤓 + 📚 = 😄

Libro consigliato

La prima guida a WordPress che integra, in una panoramica esaustiva in grado di toccare ogni aspetto fondamentale di questo strumento.

Come Installare Ghost in locale
1 min di lettura
Tecnologie alla base di WordPress
1 min di lettura
Che cos’è WordPress?
1 min di lettura