Migrazione di wordpress – le query mysql per aggiornare gli url

Quando si procede alla migrazione di un sito wordpress verso un nuovo dominio, ad esempio al momento della pubblicazione di un sito sviluppato in locale verso lo spazio web di produzione, è necessario modificare alcune configurazioni sul database relative al dominio in uso.

Riporto quindi delle query che potete eseguire tramite shell o, più comunemente tramite i software PhpMyAdmin o Sequel Pro (personalmente suggerisco quest’ultimo):

UPDATE `wp_options` SET `option_value` = REPLACE(`option_value`,'@old_domain','@new_domain') WHERE `option_name` IN ('siteurl','home','fileupload_url');
UPDATE `wp_posts` SET `post_content` = REPLACE(`post_content`,'@old_domain','@new_domain');
UPDATE `wp_posts` SET `guid` = REPLACE(`guid`,'@old_domain','@new_domain');

dovrete sostituire nelle query i campi ‘@old_domain’ con il dominio su cui risiedeva l’installazione wordpress e ‘@new_domain’ con il nuovo dominio su cui state spostando wordpress.

Ad esempio:

UPDATE `wp_posts` SET `guid` = REPLACE(`guid`,'@old_domain','@new_domain');

diventa

UPDATE `wp_posts` SET `guid` = REPLACE(`guid`,'localhost','www.dominio.com');

In alcuni casi plugin e temi salvano altre informazioni con il nome di dominio.

Potete perciò ricercare i campi che riportano il nome del dominio di partenza con la seguente query:

select * from wp_options WHERE option_value LIKE '%webagency%'

A questo punto potrete rieseguire le query con anche i nuovi campi ‘option_name’ trovati:

UPDATE `wp_options` SET `option_value` = REPLACE(`option_value`,@old_domain,@new_domain) WHERE `option_name` IN ('siteurl','home','fileupload_url', 'nuova_option_name');

sostituendo , ‘nuova_option_name’ con ciascuna delle option_name trovate.

Infine, per sostituire il nome di dominio anche all’interno del contenuto dei nostri post possiamo utilizzare la query seguente:

UPDATE wp_posts SET post_content = replace(post_content, @old_domain, @new_domain);

 

Per poter invece accedere all’admin da subito seguite questi semplici passi:

1. Aprite il file wp-config.php.

2. dopo le dichiarazioni “define” (subito prima del commento “/* E’ tutto, nessuna altra modifica! Buon blogging. */”), inserite una nuova liena e incollate questo: define('RELOCATE',true);

3. salvate il file wp-config.php.

4. Aprite il browser puntando al file wp-login.php del vostro dominio. Ad esempio se il vostro nuovo dominio è http://www.vostrodominio.com, scrivete http://www.vostrodominio.com/wp-login.php nel browser.

5. Effettuate il normale login. Potete in questo caso anche usare un plugin per l’aggiornamento degli url come Velvet Blues

 

A questo punto il vostro sito sarà funzionante sul nuovo dominio!

 
 
 

Lascia un commento

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

11 + dieci =