Come trasferire WordPress da locale a remoto

Dopo aver lavorato sul proprio sito in WordPress in locale, sei pronto a trasferire il tuo lavoro in un spazio web per essere online, ma non sai come fare? Con questa semplice guida potrai trasferire facilmente il tuo sito da locale in remoto e vedere online il tuo lavoro. Le tue pagine, i tuoi post, articoli, plugin e tutte le impostazioni che avevi in locale le avrai, senza perdere nulla, online nel tuo spazio hosting.
1) Esportare il database :
Il primo step da fare è quello di esportare il database dal server in locale, sicuramente potrai utilizzare Phpmyadmin per effettuare questa operazione. Collegati al phpmyadmin del tuo web server e accedi nel database, scegliendolo dall’elenco che troverai alla tua sinistra. Una volta scelto il database, spostati nella toolbar in alto e clicca su “Esporta” , scegli il metodo “Rapido” e come formato del file “SQL”, basterà cliccare su “Esegui” e salvare il file, ad esempio, sul Desktop, per esportarti tutto correttamente.

2) Modificare il file .sql:
Il file.sql appena scaricato avrà tutti i path assoluti che erano necessari per far lavorare correttamente il tuo sito in locale, ovviamente dal momento in cui dovrai visualizzare il tuo sito online, su un server remoto, servirà effettuare alcuni cambiamenti e cambiare i path in modo opportuno…vediamo come fare.
- Apri il file .sql con un semplice editor di testo (blocco note) o con altri programmi come notepad++ o dreamweaver, per esempio.
- Con una semplice ricerca automatica cerca la voci “localhost”, presenti nel file, e sostituiscile con la url del tuo sito internet, per esempio “http://www.tuosito.it/”. Questo procedimento è valido nel caso in cui tu abbia installato il tuo sito in locale nella root del tuo web server, nel caso in cui tu l’abbia installato in una sottocartella, ad esempio /prova, allora dovra ricercare le voci localhost/prova .
- Una volta che tutte le modifiche sono state apportate, salva il file.
3) Aprire il file config.php :
Naviga la cartella root dell’installazione di wp, presente nel web server in locale, ed apri il file config.php del tuo wordpress, in questo file ci sono tutte le configurazioni della tua installazione del cms, ci serviranno alcuni ed importanti voci da tenere in considerazione, come nome del database, nome utente e password.
/** Il nome del database di WordPress */
define ('DB_NAME', 'nome-database');
/** Nome utente del database MySQL */
define ('DB_USER', 'nome-utente');
/** Password del database MySQL */
define ('DB_PASSWORD, 'password');
/** Hostname MySQL */
define ('DB_HOST', 'localhost');
4) Creare il database:
Passiamo ora alla creazione del database nel tuo spazio hosting. Seeoux offre a tutti i clienti il pannello di controllo cPanel, e con questo anche la gestione del database attraverso MySql Wizard e Phpmyadmin.

Clicca su MySQL Database Wizard per creare un nuovo database ed inserisci (se vuoi mantenere stessi dati)
- il nome del database che ritrovi nel file config.php alla voce: define (‘DB_NAME’, ‘nome-database’).
- Inserisci di seguito l’username e la password, riferendoti sempre al file config.php di sopra.
Ok, hai creato il tuo database ed ora servirà solo fare il dump del file .sql scaricato (vedi punto 1)
Tuttaiva visto che Il database appena creato avrà un nome e un nome utente differenti da quelli usati dal precedente hosting, dovrai di conseguenza modificare i campi diversi nel file wp-config.php e salvare il file sovrascrivendolo al vecchio nella directory della tua installazione wordpress.
5) Importare il database :
Siamo quasi al termine delle operazioni da effettuare per avere il tuo sito WordPress correttamente visualizzato ed online.
Bisogna importare il database che avevi scaricato, per importare il file la procedura è semplice, torna nel tuo cPanel ed entra in phpMyAdmin, accedi al database creato nel punto precedente e clicca su “importa” , seleziona il file dal tuo computer (l’avevamo salvato sul desktop) e clicca su “Esegui“, l’importazione del file durerà qualche secondo, più la dimensione del backup sarà grande, ed ovviamente più servirà del tempo per terminare l’operazione. Finita l’operazione, il tuo database sarà stato importato correttamente
6) Copiare i file di wp da locale a remoto :
Una volta sistemato il database, un ultimo passaggio da eseguire è quello di copiare tutti i file del proprio wordpress locale nello spazio in remoto. Attraverso il tuo account FTP, accedi al tuo sito e copia tutte le cartelle (attenzione ad importare tutte e non dimenticare nulla). Tutti i file andranno caricati nella directory principale del tuo spazio web ( ossia nella /public_html ) se vuoi che il sito compaia all’URL http://www.tuosito.it
Terminate anche questa operazione, se avrai eseguito tutto correttamente, connettendoti da browser all’url del tuo sito, vedrai il to lavoro correttamente online, ogni impostazione che avevi in locale è stata trasferita nel tuo spazio web.
Trasferirsci il tuo sito wordpress su Hosting Seeoux

salve, complimenti per la guida!!
ho una domanda da fare sul PUNTO 6 : i file che devo caricare tramite ftp sarebbero tutti quelli nella cartella “wp”?
Salve e grazie!
No i file e directory da trasferire sono tutti quelli presenti nella sua installazione di wordpress . “wp” è solo stato riportato come abbreviazione di “wordpress” 😉
Salve avrei una curiosità, come mai per passare da locale a remoto si compie questa procedura invece se vogliamo solo cambiare directory dobbiamo usare istruzioni in sql per cambiare il nome degli indirizzi? Non basta cambiare nel file sql l’indirizzo proprio come abbiamo fatto qui? Forse bisognerebbe esportare da db modificarlo e importarlo di nuovo al suo posto?
Sono entrambe due procedure corrette, o si lancia una query sql specifica, oppure per chi ha paura di combinare problemi, può tranquillamente modifica il file .sql con un’editor di testo.
Buonasera , sono un vostro nuovo cliente . Sto effettuando le procedure da voi descritte ma ho notato che in locale al posto di “localhost” ho “127.0.0.1” da sostituire. E’ lo stesso ? Grazie.
Salve Marco, per prima cosa le ricordo che essendo nostro cliente può chiedere supporto tecnico dal settore predisposto, ovvero andando su seeoux.com/helpcenter . Detto ciò il dato che trova ovvero l’ip in locale 127.0.0.1 lo trova qui: define (‘DB_HOST’, ……); ?
ad ogni modo, metta localhost e seguendo la guida và a funzionarle tutto 😉
Salve,
ho seguito la vostra guida per trasferire il sito wordpress da locale a remoto, ma quando importo il database .sql mi da questo errore:
Errore
query SQL:
# WordPress MySQL database backup
#
# Creato: Thursday 13. February 2014 03:05 UTC
# Hostname: localhost
# Database: `db_diad`
# ——————————————————–
# ——————————————————–
# Tabella: `wp_commentmeta`
# ——————————————————–
#
# Cancella tutto tabella `wp_commentmeta`
#
DROP TABLE IF EXISTS `wp_commentmeta` ;
Messaggio di MySQL: Documentazione
#1046 – No database selected
da cosa e’ dovuto? come posso risolvere?
ho creato piu’ volte il file ed ho anche cancellato e ricreato il database in remoto, ma con nessun risultato, cosa mi consigliate di fare?
Grazie dell’aiuto
Manuela
Ciao Manuela, sembra un problema riguardo l’importazione, il suo database che ha su server remoto è db_diad o altro? ha effettuato l’importazione tramite phpmyadmin o tramite shell sul suo hosting? Per quanto poi concerne un’assistenza migliore, se è nostra cliente può contattarci via ticket dal supporto 😉
sul server ho creato un db con lo stesso nome db_diad. ed ho effettuato l’importazione tramite phpmyadmin. cosa mi consigliate?
nel suo file .sql se lo edita con un editor di testo trova la sezione di CREATE TABLE IF NOT EXISTS ‘wp_commentmeta’ ? con sottostante un’ INSERT TABLE riferito il primo alla creazione della tabella e la seconda istruzione sql all’inserimento dei dati
per quanto riguarda la tabella wp_commentmeta ho questo codice:
# ——————————————————–
# Tabella: `wp_commentmeta`
# ——————————————————–
#
# Cancella tutto tabella `wp_commentmeta`
#
DROP TABLE IF EXISTS `wp_commentmeta`;
#
# Struttura della tabella `wp_commentmeta`
#
CREATE TABLE `wp_commentmeta` (
`meta_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`comment_id` bigint(20) unsigned NOT NULL DEFAULT ‘0’,
`meta_key` varchar(255) DEFAULT NULL,
`meta_value` longtext,
PRIMARY KEY (`meta_id`),
KEY `comment_id` (`comment_id`),
KEY `meta_key` (`meta_key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
#
# Contenuto della tabella `wp_commentmeta`
#
#
# Fine dei dati contenuti nella tabella `wp_commentmeta`
# ——————————————————–
Sotto a questo CREATE TABLE non vedi un INSERT INTO `wp_commentmeta` ? Ma hai commenti anche di prova presenti nel forum in locale? Comunque dovresti vedere se c’è qualche cosa che non torna nel tuo file .sql, o chiedere al tuo provider che di sicuro possono darti informazioni utili e aiuti essendo tu loro cliente 😉
Buonasera, ho seguito la vostra guida per altri siti web e non ho auvot nessun problema.
Sto trasferendo tramite Filezilla un ulteriore sito ma putroppo quando provo iol trasferimento i file rimangono in coda e compare la dicitura in rosso “TRASFERIMENTO FALLITO”.
Da cosa può dipendere?
Grazie Mille
Davide
Salve Davide,
probabilmente può essere un problema di chiusura di connessione con il servizio FTP sul server remoto su cui sta cercando di effettuare l’upload. Il tuo hosting è su di noi ? http://www.seeoux.com ?
Ho risolto, dipendeva dal certificato scaduto. Ho cambiato il tipo di connessione allo spazioo FTP e non ho avuto problemi. Il mio hosting non è ospitato su di voi. Vi ringrazio ugualmente.
Buona giornata
buongiorno, mi sto scontrando con un problema che mi sfugge. Dopo aver modificato il path con la url del mio sito e aver importato il db non riesco a visualizzare tutti i plugins e i contenuti che avevo inserito e installato in locale. quando ho fatto il trasferimento dei file con ftp ho trasferito tutto, quindi anche contenuti e plugins. Che cosa ho scordato di fare? grazie per il supporto. Paolo
Salve Paolo,
Quindi ha i plugin nella directory /wp-content/plugins ma non trova gli stessi nel backend del suo worpdress? può fornirmi il suo dominio e/o uno snapshot della sua area wp-admin –> plugins ? 😉
grazie per la risposta. sì è corretto, il dominio è winetravelling.com
e in allegato c’è un’immagine del mio ftp con nella cartella plugins
Paolo considerando che non possiamo controllare lato server il tutto per lei, in quanto non è cliente di Seeoux.com le uniche cose che ci vengono in mente sono:
1) Un problema non di permessi ( che sono corretti ) ma di proprietà su file e directory con l’utente sul server in remoto e quello che aveva su altro server da cui ha trasferito l’applicativo
2) controllare possibili errori all’interno dell’error_log del suo spazio web in cui possa riscontrare qualche log a riguardo.
avete ricevuto la mia risposta? grazie!
Buongiorno,
Nel caso in cui io volessi cambiare il nome della cartella “prova” contenente il mio sito in locale in “it” in modo da avere http://www.ilmiosito.it/it è sufficiente cambiare il nome della cartella o è necessario un diverso procedimento? grazie per l’aiuto. Riccardo
Salve Riccardo,
deve seguire la guida che è presente ossia oltre a spostare i file e directory dalla /public_html alla /public_html/it deve anche modificare tutti i path assoluti che saranno presenti nel suo database..quindi o modificare tramire query oppure esportare il db in formato .sql –> aprirlo con un editor di testo e successivamente modificare tutti i path, ad esempio da: http://ilmiosito.it/ a http://ilmiosito.it/it 😉
Grazie mille per la rapidità, sono riuscito nell’intento!
Di niente, saluti 😉
Buongiorno,
Se io volessi cambiare il nome della cartella nel vostro esempio “prova” in “it” è sufficiente rinominare la cartella.. o è necessario un procedimento diverso? grazie per l’aiuto.
Salve ho seguito tutta la procedura, a dire la verità l’importazione avviane senza errori sia del db che dei contenuti, l’unica cosa è che perde le impostazione del tema che gli ha dato in precedenza.
Si qualche impostazione salvate nel tema, in questo trasferimento potrebbero essere ripristinate come di default
Buonasera,
innanzitutto grazie per la vostra dettagliata guida.
Solo che ho un problema. Non riesco ad esportare il database. Infatti quando clicco su esporta esce questo messaggio:
Errore
Query SQL: Modifica
SELECT `id`, `template_name` FROM `phpmyadmin`.`pma__export_templates` WHERE `username` = ‘root’ AND `export_type` = ‘server’ ORDER BY `template_name`;
Messaggio di MySQL:
#1932 – Table ‘phpmyadmin.pma__export_templates’ doesn’t exist in engine
Mi sapreste aiutare?
Grazie
Salve @mattiagoduto:disqus dall’errore mysql si evince che ha problemi con il phpmyadmin installato nel suo server in locale, provi ad utilizzare tali suggerimenti per risolvere:
http://stackoverflow.com/questions/11506224/connection-for-controluser-as-defined-in-your-configuration-failed-phpmyadmin-xa/11506495#11506495