WordPress: rinominare prefisso tabelle

Qualche tempo fa vi parlai di come fare un porting di un blog WordPress, specificando le azioni necessarie soprattutto per cambiare il dominio.

Un’altra operazione frequente nel mondo WordPress è quella di fare il trasferimento di un blog presso un hosting condiviso, magari in un MySQL con altre tabelle dentro (magari almeno un altro WordPress) e l’impossibilità di creare un nuovo database.

La soluzione migliore è quella di usare un prefisso per le tabelle di database, operazione prevista da WordPress che in wp-config.php aggiunge proprio il campo $table_prefix.

Come prima cosa andate sul vecchio MySql e fate un dump completo di tutte le tabelle (dump = backup formato script SQL con INSERT compresi). Poi preparate l’hosting destinatario con tutti i file.

Fate una copia di sicurezza del dump fatto e aprite il .sql con un editor di testo (notepad++ è eccellente). A questo punto la prima operazione è quella di rinominare tutte le Create Table, ovvero le operazioni che creano le tabelle.

Se per esempio il nuovo prefisso sarà wp2_ dovete procedere con una bella sostituzione:
CREATE TABLE `wpmrx_ con CREATE TABLE `wp2_

Attenzione che l’apice ` è fondamentale per non modificare altre voci che non devono essere toccate, tipo definizioni di stringhe. Ovviamente se nel db avete delle tabelle personalizzate, richiamate da plugin o altro… beh dovete vedere voi come gestirle manualmente!!!

Ora non ci resta che rinominare alcune stringhe(dentro gli Insert) che indicano delle tabelle il cui nome è stato da noi modificato. L’operazione è semplice: fate un “sostituisci tutto” di queste stringhe con la versione con nuovo prefisso:

wpmrx_user_roles > wp2_user_roles
wpmrx_capabilities > wp2_capabilities
wpmrx_autosave_draft_ids > wp2_autosave_draft_ids
wpmrx_user_level > wp2_user_level
wpmrx_usersettings > wp2_usersettings 

Non vi resta che fare un import sul nuovo database e il gioco è concluso: have a good WordPress day 🙂

Loading Facebook Comments ...

Lascia un commento

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