WordPress da remoto a locale (computer)

WordPress da remoto a locale (computer)

Vuoi trasferire il tuo blog WordPress da remoto (online) a locale (computer) e mantenere tutte le impostazioni, tema e plugin attivi? Allora segui i seguenti passaggi.

1. Installa XAMPP

Per prima cosa devi installare un emulatore di server sul tuo computer, così da poter far girare WordPress in locale. Per far ciò scarica XAMPP (o MAMP se usi un Mac).

Quando farai partire l’installazione, dovrai scegliere in che cartella installare XAMPP. Usane una comoda ed accessibile in quanto WordPress andrà caricato dentro questa cartella. Ad esempio io ho creato la cartella offline nei miei Documenti: C:\Documents and Settings\Robi\Documenti\offline\xampp .

Terminata l’installazione, avvia il server locale e premi i pulsanti Start di Apache e MySql, il risultato dovrebbe essere come questa schermata:

avviare il server in XAMPP

Server attivato 🙂

2. Crea database in locale

Dopo aver avviato il server locale, apri il tuo browser e vai all’indirizzo http://localhost . Se hai installato tutto correttamente ti comparirà la seguente schermata:

xampp homepage

Seleziona Italiano e ti ritroverai nel pannello di amministrazione di XAMPP. Nella colonna a sinistra, sotto il menù Strumenti clicca su phpMyAdmin. Ora ti troverai nel pannello di amministrazione di phpMyAdmin, che consente di amministrare i database.

Premi il pulsante Database e senza neanche accorgertene avrai davanti a te la possibilità di creare un database.

creare database offline

Inserisci il nome del database da creare e salvalo da qualche parte (sul blocco note ad esempio), poi clicca sul pulsante Crea.
Nel mio caso ho creato il database wp_robertoiacono.

Se tutto è andato a buon fine, comparirà un messaggio dove ti dice che il database è stato creato. Inoltre nella tabella sotto la zona crea database, comparirà il nome del database che hai appena creato.

3. Scarica i file

Scarica sul tuo computer tutti i file di WordPress dal tuo spazio web via ftp, solitamente si trovano nella root (per intenderci, è la posizione in cui vedi le cartelle wp-content, wp-admin …).

Dove scaricarli?

Ti consiglio di scaricarli direttamente nella cartella che userai per WordPress in locale, quindi, seguendo il mio esempio, crea la cartella nome-cartella-wordpress così da avere  C:\Documents and Settings\Robi\Documenti\offline\xampp\htdocs\nome-cartella-wordpress e salva il contenuto dello spazio web qui dentro.

. Modifica il file wp-config.php

Apri il file wp-config.php e modifica le informazioni del database in questo modo:

[php]
define(‘DB_NAME’, ‘wp_robertoiacono’);
/** Nome utente database MySQL */
define(‘DB_USER’, ‘root’);
/** Password database MySQL */
define(‘DB_PASSWORD’, ”);
[/php]

Sostituisci al posto di wp_robertoiacono, il nome del database che hai creato in locale (e che hai salvato da qualche parte).

4. Backup database

Crea il file di backup del tuo database remoto (online), o sfruttando il cPanel/Plesk fornito dal tuo hosting provider, oppure tramite un qualsiasi plugin di backup, come WP DB-Backup, che permette di creare un backup dell’intero database velocemente. Vai su Strumenti > Backup > e seleziona tutte tabelle (quindi spunta tutte le caselle).

seleziona tabelle

Elimina questo plugin al termine delle operazioni se non ti serve (a quanto pare, rallenta un po’ il caricamento di WordPress).

Dovresti ottenere un file .sql o .sql.gz o .zip.

5. Modifica il file di backup

Ora devi sostituire tutti gli indirizzi del tuo blog online con gli indirizzi in locale.

Se il file di backup è compresso (.sql.gz oppure .zip) estrailo, in maniera tale da ottenere un file .sql.

Apri questo file con un editor di testo come Notepad++ (il blocco note va bene ma è molto lento). Ci metterà un po’ se il file è bello pieno.

Sostituisci (tramite l’apposita funzione presente in ogni editor) tutte le stringhe che contengono il nome del tuo dominio, con la stringa localhost/nome-cartella-wordpress. Se non utilizzi una cartella per WP in locale perchè hai installato tutto nella root di XAMPP (quindi direttamente in htdocs), allora devi sostituire il tuo dominio con localhost (senza la barra finale).

Nel mio caso, il nome di dominio è www.robertoiacono.it. Il nome della cartella di WordPress in locale è nome-cartella-wordpress.

Quindi sostituirò tutte le stringhe www.robertoiacono.it con localhost/nome-cartella-wordpress. Ho sostituito circa 43.000 stringhe 🙂

Salva il file.

6. Importa backup

Ora torna al pannello di amministrazione di PhpMyAdmin che si trova in http://localhost/phpmyadmin/index.php, ed entra nel database che hai creato, nel mio caso wp_robertoiacono, cliccando sul relativo nome nella colonna di sinistra.

Premi il pulsante Importa in alto a destra, carica il file .sql che hai modificato e premi il pulsante Esegui.

importa db locale

Se il file di backup è troppo grande, ti verrà mostrato un errore:

Stai probabilmente cercando di caricare sul server un file troppo grande. Fai riferimento alla documentazione documentation se desideri aggirare questo limite.

In questo caso devi modificare le dimensioni massime dei file da caricare. Apri il file php.ini che trovi in XAMPP\php\php.ini, e sostituisci (se non sono presenti, aggiungili) i valori di upload_max_filesize, memory_limit e post_max_size con:

upload_max_filesize = 128M
memory_limit = 128M
post_max_size = 128M

Salva il file, ferma il server virtuale locale, e chiudi per sicurezza dalla pagina di PhpMyAdmin.

Avvia nuovamente il server, e prova nuovamente ad importare il file. Ora dovrebbe andare tutto liscio.

7. Sei pronto a smanettare?

Vai all’indirizzo http://localhost/nome-cartella-wordpress/ e dovresti vedere il tuo bel blog replicato in locale. Funziona tutto come in remoto, compreso il login ed il nome utente.

Gli unici problemi che ho riscontrato sono che i Widget non vengono mantenuti ma si devono ricreare ogni volta a mano, e a volte, anche il font personalizzato non viene riconosciuto.

Ora sei pronto per smanettare a più non posso 🙂

Mi raccomando, se devi modificare il tema, crea una tema child.

E se hai intenzione di cambiare il tuo hosting, guarda quali sono i migliori hosting per WordPress.

VUOI CREARE IL TUO SITO O BLOG WORDPRESS?

Scegli uno tra i migliori hosting per WordPress

HOSTING

Scegli uno tra i migliori hosting per WordPress

Hosting

Scegli uno tra i migliori temi WordPress professionali

GRAFICA

Scegli uno tra i migliori temi WordPress professionali

Grafica

Guide e risorse per gestire il sito WordPress a 360°

GESTIONE

Guide e risorse per gestire il sito WordPress a 360°

Gestione
  
con le dita sempre in costante, frenetico movimento sulla tastiera… vengo spesso trascinato e catturato “in rete” per colpa delle mille idee che mi girano per la testa (prima o poi troverò quella giusta)… dal futuro incerto (nonostante una laurea, e chi non lo è?..siamo in tanti!) .. credo fortemente nella condivisione della conoscenza!
12 Commenti
  • ciao ho seguito la tua guida per passare il sito da remoto in locale, ma purtroppo quando clicco sulle varie pagine mi rimanda sempre sulla pagina Xampp…
    non so come fare
    ti ringrazio

    • Roberto Iacono

      Ciao Mario, aggiorna i permalink

  • Ciao,
    ho lo stesso problema di Mario, non capisco perchè, è un problema di plugin? Puoi aiutarmi a risolvere?

    Grazie mille!

    • Roberto Iacono

      Provate a riaggiornare i permalink, a me è bastato 🙂

  • Ciao, innanzi tutto complimenti per il sito.
    Ho provato questa guida, ma quando cerco di accedere alla magina del sito mi dà: Errore nello stabilire una connessione al database. Ho controllato il wp-config.php e mi pare che i dati siano tutti corretti…. grazie

    • Roberto Iacono

      Ciao Walter, probabilmente sono sbagliati (al 99%)… ricontrollali.
      Ciao 🙂

  • Ciao,
    anch’io ho seguito la guida però non riesco a vedere oltre la home, perchè qualsiasi cosa clicco mi rimanda a XAMPP..Anche se provo ad accedere al pannello di amministrazione di WordPress fa lo stesso servizio, quindi non riesco neanche ad aggiornare i permalink. Hai qualche consiglio da darmi?

    • Roberto Iacono

      Io ricontrollerei se tutti i link del database siano corretti…

  • Ciao Roberto,

    anch’io ho seguito la procedura, ma il feedback è “Errore nello stabilire una connessione al database”… a me sembra proprio di inserire tutti i dati come suggerito.

    Ma il ‘DB_HOST’ deve rimanere lo stesso del provider oppure deve essere cambiato anche quello? E come?… Nel tuo punto 3 non viene menzionato.

    Grazie mille.

    • Roberto Iacono

      Io lascio sempre

      define(‘DB_HOST’, ‘localhost’);

      Ricontrolla tutti i dati, l’errore è qui.
      Ciao

  • Mmm.. ok. Adesso – in locale – mi apre la home page e risulta tutto ok.
    Però, non appena clicco su un link interno, il feedback è:

    “Not Found
    The requested URL /folder/folder/name/ was not found on this server.”

    Dove ovviamente al posto di folder e name ci sono i nomi reali…
    Cosa può essere? Grazie ancora…

    • Roberto Iacono

      Aggiorna i pemalink nuovamente e dovrebbe sistemarsi.
      Ciao