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 🙂