Installare WordPress in una sottocartella o nella root?

installare wordpress in una sottocartella o nella root

È ormai opinione diffusa che installare WordPress sia una procedura abbastanza semplice.

Tuttavia, soprattutto se viene fatto attraverso la procedura automatica messa a disposizione dai vari hosting provider, non è sempre facile capire cosa stiamo facendo all’interno del nostro spazio web.

In particolare, non sempre è chiaro il fatto che per installare WordPress abbiamo due possibilità: copiare tutto all’interno della root del dominio, oppure in una sottocartella.

Non avere la piena consapevolezza di quello che si sta facendo quando si installa WordPress può comportare alcuni problemi in futuro, come ad esempio:

  • Devo rifare un sito web trasferendo i contenuti esistenti, come faccio a lavorare su una nuova versione del sito e poi pubblicare tutto solo quando il sito è finito?
  • Devo creare una piattaforma di test sulla quale provare a fare l’aggiornamento di tutti i plugin prima di procedere con il sito ufficiale (in produzione), come posso fare?
  • Come posso creare una copia del sito all’interno dello stesso dominio?
  • Quali sono e dove sono collocati tutti i file di WordPress?
  • Voglio creare una copia di backup di tutto il sito, manualmente. Quali sono esattamente i file che devo copiare?

Questi sono solo alcuni esempi delle domande che mi sono state fatte nel corso del tempo, ma potresti avere vari motivi per i quali preferire l’installazione di WordPress in una sottocartella oppure nella root del dominio del tuo spazio web.

Nell’articolo in cui descrivo come installare WordPress manualmente, per non appesantire troppo il discorso, non mi sono soffermato molto sulla scelta di dove posizionare i file di WordPress. Indico semplicemente che bisogna caricarli all’interno della cartella principale del server.

In questo articolo, invece, voglio entrare più nello specifico e spiegare come eseguire l’installazione in una cartella qualsiasi del tuo spazio di hosting e poi trasferire WordPress nella root. Messa così ti potrà sembrare di dover eseguire un passaggio in più, ma in realtà non è così. Inoltre, andando avanti nell’articolo, ti spiegherò anche quando potrebbe convenire installare WordPress in una sottocartella del tuo dominio principale piuttosto che nella root.

Quando acquisti uno spazio di hosting condiviso, generalmente, ti viene assegnato creato uno spazio web all’interno di un server utilizzato da più utenti.

Questo spazio web solitamente ha una struttura ben definita.

Ad esempio Aruba, per citare uno dei più famosi, ha una struttura tale che la root del sito sia una cartella con lo stesso nome del dominio. Entrando in ftp con le credenziali fornite da Aruba stessa, si noterà subito l’esistenza di una cartella con un nome tipo www.miodominio.com. Questa, per Aruba è la root.

SiteGround invece, come generalmente tutti gli hosting provider dotati di cPanel come FastCometHostgator, BlueHost,ecc., generalmente considerano come cartella root quella denominata public_html.

Cosa intendiamo per “cartella root” di un dominio web?

Ai fini di questo articolo e semplificando molto, possiamo dire che la “cartella root” di un dominio web è quella cartella in cui l’utente viene rimandato quando digita il nome del nostro dominio sulla URL bar del browser. Oppure, vista in altro modo, è la cartella in cui virtualmente risiede la nostra homepage.

Cerchiamo di chiarire con un esempio.

Supponiamo di aver registrato a nostro nome il dominio www.miodominio.com attraverso il nostro hosting provider preferito. Oltre al dominio, abbiamo anche acquistato uno spazio web, dei database MySql e tutta una serie di servizi a corredo. Ebbene, quando nel browser noi o qualsiasi utente andrà a digitare www.miodominio.com, in pratica staremo dicendo al browser di andare a leggere il contenuto del nostro spazio web, a partire dalla cartella root.

Se poi nella root (public_html nel caso di SiteGround o www.miodominio.com nel caso di Aruba) è presente un file nominato in un modo specifico (ad esempio index.html, index.php, default.html, home.php, home.html, ecc.), l’utente vedrà, come prima cosa, il contenuto di questo file. Questa è la nostra homepage.

Se invece questo file non si trova nella root, ma dentro ad una sottocartella (ad esempio chiamata “myfolder“), l’utente non riuscirà a vedere il contenuto di questo file semplicemente digitando www.miodominio.com, ma dovrà inserire alla fine della URL anche il percorso per accedere alla cartella. Ovvero, nel nostro esempio: www.miodominio.com/myfolder.

installare WordPress in una sottocartella o nella root

Cosa c’entra tutto questo con WordPress?

Per WordPress il discorso è del tutto analogo. Quando lo installate, potete scegliere se copiare tutti i files nella root oppure creare una cartella dedicata.

Esattamente come nel caso precedente, se hai installato WP nella root, potrai vedere il tuo nuovo sito semplicemente digitando il tuo nome a dominio all’interno della address bar del tuo browser. Per rimanere sempre nel caso del nostro esempio generico: www.miodominio.com. Se invece lo hai installato in una cartella (ad esempio “wordpress”), per vedere il sito dovrai accedere alla cartella, digitando quindi nella URL bar del tuo browser l’indirizzo completo www.miodominio.com/wordpress.

Se ti stai chiedendo perché potresti preferire installare WordPress in una sottocartella dedicata, ci sono vari motivi, alcuni dei quali rispondono alle domande di cui sopra:

  • Il tuo spazio di hosting sarà molto più ordinato, e potrai avere più installazioni di WordPress all’interno dello stesso dominio, potendole gestire tranquillamente in modo indipendente senza creare confusione tra i file delle varie installazioni
  • Potresti voler fare un upgrade del tuo sito, passando da un tema ad un altro (oppure da un CMS ad un altro), e piuttosto che mettere il sito in manutenzione potresti crearne una copia e lavorare su di essa, per poi “switchare” dal tuo sito vecchio al tuo sito nuovo solo alla fine
  • Potresti voler installare un sito web vetrina in WordPress e poi creare un’e-commerce all’interno dello stesso dominio ma con un’altro CMS, come ad esempio Magento

Insomma, come avrai capito, il fatto è che ci sono molte ragioni per cui potresti voler (o dover) installare più versioni di WordPress (o più CMS) nello stesso spazio web. In questo caso, senza ogni ombra di dubbio, ti converrebbe avere tutto ben organizzato in cartelle piuttosto che sparso in giro per il tuo spazio web (per lo stesso motivo per cui ti organizzi con le cartelle anche i files all’interno del tuo PC).

Installare WordPress nella root del dominio senza spostare i file

Forse a questo punto ti chiederai: “se è vero che è così comodo installare WordPress in una sottocartella dedicata, sono costretto a dover inserire anche il nome della cartella stessa all’interno della URL?”.

Sarebbe molto fastidioso (oltre che poco sicuro) se ogni volta che l’utente visita il nostro sito comparisse sempre anche il nome della cartella. E’ molto più facile ricordare e digitare www.miodominio.com piuttosto che www.miodominio.com/myfolder.

Come sappiamo bene, l’utente web non ha molta pazienza. Pertanto, più gli facilitiamo la navigazione meglio è.

Fortunatamente, esiste un modo per trasferire WordPress da una sottocartella alla root senza dover spostare tutti i files di installazione, ed è anche molto semplice.

Supponiamo quindi che tu abbia già seguito tutte le indicazioni descritte nell’articolo su come installare WordPress manualmente, e abbia scelto di installare il tuo sito in una cartella chiamata “myfolder“. Per poter trasferire WordPress dovrai semplicemente:

  1. Copiare sul tuo computer (N.B.: non spostare, ma solo scaricare in locale) due files che si trovano all’interno della cartella di WP (myfolder, nell’esempio); i due file si chiamano “index.php” e “.htaccess” e non devono assolutamente essere cancellati dalla cartella in cui si trovano
  2. Aprire il file “index.php” con un editor di testo possibilmente specifico per la programmazione (Dreamweaver, Sublime, TextWrangler, Notepad++, ecc.)
  3. Identificare la stringa
    require( dirname( __FILE__ ) . '/wp-blog-header.php' );

    e modificarla aggiungendo il nome della cartella in cui hai installato i files di WP, in questo modo

    require( dirname( __FILE__ ) . '/myfolder/wp-blog-header.php' );

    (dove ovviamente dovrai sostituire la parola “myfolder” con il nome della tua cartella)

  4. Copiare i due file (nota bene che abbiamo modificato solo il file index.php mentre il file .htaccess è rimasto inalterato) all’interno della web root del tuo sito, quindi dentro www.miodominio.com e non dentro myfolder (leggi i commenti a questo articolo per maggiori dettagli)
  5. Andare nel backend di WordPress, su “Impostazioni / Generali” e modificare il parametro “Indirizzo sito (URL)” togliendo il nome della cartella, in questo modo:
    trasferire WordPress nella root

    Parametri URL da modificare – prima

    trasferire WordPress nella root

    Parametri URL da modificare – dopo

  6. Cliccare su “Salva le modifiche” in fondo alla pagina
  7. Andare, sempre nel backend, su “Impostazioni / Permalink” e cliccare su “Salva le modifiche” anche se non si è cambiato niente

A questo punto, dopo aver svuotato la cache del browser, dovresti vedere il tuo direttamente all’interno del dominio principale.

N.B.: prima di cominciare, ti consiglio vivamente di fare un backup di tutti i files e del database del tuo sito, per poter ripristinare tutto in caso di problemi durante la procedura.

Per qualsiasi dubbio su come trasferire WordPress sulla root del tuo spazio web, non esitare a lasciare un commento sul post: cercherò di risponderti il prima possibile.

Mi raccomando, se pensi che questo articolo ti sia stato utile e ti piace il suo contenuto, ricambia facendomi un piccolo favore: metti un like sulla nostra pagina Facebook e condividila sui tuoi profili social! :)

Sai cosa sono Child Theme? Sai quando è perché è necessario utilizzarli?

Scopri tutti i segreti e i vantaggi dei Child Theme in questa mini guida gratuita
che ho creato per i lettori di BLOGWP.IT.

L’ultimo commento deve essere approvato.
81 commenti
    • Massimiliano
      Massimiliano dice:

      Ciao Giuseppe,

      Grazie a te, sono contento che l’articolo ti sia stato utile.

      Per prima cosa assicurati che il tuo FTP client o il File Manager con cui stai visualizzando e gestendo gli spostamenti dei files sia configurato per visualizzare anche i files nascosti. I file con il punto davanti, infatti, vengono interpretati come hidden files e di conseguenza non vengono mostrati. Ad esempio se usi FireFTP, puoi andare nelle impostazioni avanzate e verificare che la voce “Visualizza i file nascosti” sia spuntata, come nello screenshot seguente.

      Se ancora non trovi il file .htaccess, potrebbe essere che WordPress non abbia avuto bisogno di generarlo all’interno della sua cartella di installazione. Ciò non significa che non esista da nessuna parte ma, se il tuo sito è installato in un server condiviso, il file .htaccess, essendo comunque necessario ad Apache per abilitare o disabilitare alcune funzionalità del server, potrebbe risiedere in qualche cartella superiore. Esso, infatti, funziona in maniera gerarchica: se viene caricato nella cartella principale del servizio di hosting, le sue configurazioni verranno applicate a tutte le sottocartelle in modo ricorsivo, a meno che ciascuna di loro non disponga di un proprio file .htaccess.

      Di solito, non appena attivi i “pretty permalink” (ovvero gli URL parlanti) nella sezione “Impostazioni / Permalink” del backend e selezionando qualsiasi opzione diversa da “Semplice” (io di solito uso “Nome articolo”), WordPress ha bisogno di generare un suo .htaccess nella cartella in cui è stato installato, per impostare la regola di rewrite degli URL.

      Se non hai mai impostato quest’opzione potrebbe essere che il file .htaccess non sia proprio presente perché WordPress non lo ha mai generato, quindi, ai fini delle operazioni descritte nell’articolo, puoi tranquillamente non curartene, preoccupandoti solo del file “index.php”.

      Il mio consiglio, tuttavia, è quello di provare ad attivare i “pretty permalink” e vedere cosa succede, perché sono molto importanti sia per una navigazione più fruibile da parte dell’utente, sia a livello di SEO. Anzi se ti va tienici aggiornati! :)

      Massimiliano

      Rispondi
  1. Dino

    ciao Massimiliano,
    articolo utilissimo grazie. Ho bisogno di chiederti un consiglio.
    ti premetto che lavoro in sitegroud e loro mi consigliano di utilizzare WordPress tool kit.
    ti spiego, ho creato un test di sito su di un sottodominio http://www.test.ilmiosito.com. ora che lo ho praticamente completato vorrei spostare il tutto su http://www.ilmiosito.com.
    Secondo te che procedura posso utilizzare? la procedura dell’articolo funziona anche se il nuovo sito è in un sottodominio e non in una sottocartella?
    intanto grazie

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Dino,

      Grazie a te, sono contento che ti piaccia l’articolo.

      No, la procedura che trovi qui non è sufficiente a trasferire un sito da un sottodominio ad un dominio.

      Purtroppo devi fare una vera e propria migrazione, come se stessi passando da un dominio ad un altro. Ci sono diversi metodi e scuole di pensiero, io di solito preferisco non utilizzare nessun plugin ed intervenire direttamente nel database per avere il pieno controllo di quello che sto facendo.
      La cosa principale che va fatta, se non devi trasferire fisicamente il sito da uno spazio di hosting ad un’altro ma solo modificare il dominio, è sostituire tutte le occorrenze di www.test.ilmiosito.com con www.ilmiosito.com all’interno del database. Dopodiché, se il sito si trova in una sottocartella, allora si, puoi procedere con questa procedura.

      Per fare il search and replace di solito utilizzo un tool comodissimo che trovi qui: https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

      Non avendo sott’occhio tutta la situazione per il momento non ti so dire più di così, ma se hai ulteriori dubbi puoi scrivermi anche una email all’indirizzo che trovi nei contatti.

      N.B.: Naturalmente prima di fare qualsiasi cosa fai un backup del sito e del DB, per sicurezza.

      Rispondi
  2. Mattia

    Buongiorno,

    penso di aver sbagliato qualcosa nel processo di cambio root.

    Ora non vedo ne il sito nuovo e se provo ad entrare nel mio admin di wordpress mi porta ad una pagina con error 404.

    Come posso risolvere?
    Grazie mille

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Mattia,

      Cosa intendi per “cambio root”? Hai spostato i files da una cartella ad un’altra?

      Se il sito funziona, ma ti da pagina 404, probabilmente c’è qualche problema sui permalink (prova a rivedere lo step numero 7 di questo articolo) oppure potresti dover riconfigurare opportunamente i due parametri “Indirizzo WordPress” e “Indirizzo sito”, presenti nelle impostazioni generali (vedi punto 5).

      Avrei bisogno di più elementi per capire bene il problema. Se non riesci a risolvere con questi due suggerimenti scrivimi attraverso il form della pagina contatti oppure direttamente via email (gli indirizzi sono sempre nella stessa pagina), così vediamo se scambiandoci qualche screenshot riesco ad identificare la causa dell’errore.

      Ciao,
      Massimiliano

      Rispondi
    • michele

      ciao ho avuto anche io questo problema:
      avevo wordpress installato su /prova. Seguendo le istruzioni qui presenti ho copiato .php sul pc, variato indicando il link con /prova e uploadato sul root. Non funzionava finchè ho anche sovrascritto quello originale nella cartella /prova

      Rispondi
      • Massimiliano
        Massimiliano dice:

        Ciao Michele,

        Si, esatto. Il file index.php va scaricato in locale, modificato e poi caricato solo sulla web root, non dentro la cartella in cui è installato WordPress.

        Ciao,
        Massimiliano

  3. Marco

    Grazie dell’articolo Massimiliano, molto utile.

    Ho però un problema. Sono riuscito facilmente a fare tutto e il nuovo sito è online sulla root, ma c’era un’altra applicazione che adesso non funziona. Si chiama Amember ed è un software per gestire le memberships. In pratica è installato nella root insieme al vecchio wordpress e immagino che al suo interno abbia decine di file php. Per farlo funzionare dovrei modificare anche questi come ho fatto con l’index.php? O c’è un metodo più intelligente e rapido? Grazie se potrai rispondermi.

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Marco,

      Grazie, mi fa piacere che l’articolo ti sia stato utile.

      Purtroppo la procedura indicata vale solo per il core e tutti i plugin e i temi che si trovano installati all’interno di WordPress.

      Non conosco aMember, ma facendo una piccola ricerca ho visto che si tratta di un software indipendente da WordPress, anche se può essere integrato.

      In questa pagina web, facente parte della documentazione di aMember, viene fatta una piccola overview di quello che si può fare per integrare i due sofware. Viene suggerito che WordPress può essere installato sia nella root che in una sottodirectory, mentre aMember dovrebbe essere installato in una sottordirectory.

      In quest’altra pagina vengono fatti degli esempi su come impostare la struttura delle cartelle di aMember (loro chiamano la sottocartella “amember”).

      Purtroppo non so dirti più di così perché non l’ho mai utilizzato ed, essendo un software esterno, al contrario dei plugin, esula un po’ dalle regole generali del mondo WordPress.

      Spero comunque di averti dato qualche spunto per risolvere il tuo problema. Fammi sapere! ;)

      Ciao,
      Massimiliano

      Rispondi
  4. Simone

    Ho trovato l’articolo molto utile e chiaro complimenti.
    Ho bisogno di un aiuto:

    Mi trovo nella situazione di dover sostituire un vecchio sito con uno nuovo da realizzare con wordpress, mantenendo ovviamente lo stesso indirizzo.
    pensavo di installare wordpress in una sottocartella chiamata ad esempio “nuovosito” nella root e lavorare con calma.
    Nel momento in cui sarà pronto il sito nuovo vorrei eliminare il sito vecchio e rimpiazzarlo. La tua procedura è chiara ma mi troverei ad avere due siti in contemporanea su uno stesso indirizzo??vorrei avere maggiori delucidazioni su come “togliere” dalla root il sito vecchio ed eventualmente eliminarlo lasciandovi il nuovo.

    grazie

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Simone,

      Grazie mille del tuo feedback sull’articolo.

      Per la prima parte della tua domanda ti confermo che si, puoi tranquillamente fare come dici tu. In realtà non avrai due siti contemporaneamente sullo stesso indirizzo, ma due siti su uno stesso dominio e nello stesso spazio di hosting. Ovviamente, per non fare troppa confusione, dovrai utilizzare due database diversi.

      Naturalmente, solo uno dei due siti potrà essere associato alla URL principale del dominio (ad esempio “www.miodominio.com”), mentre per accedere all’altro sito dovrai digitare il percorso completo, includendo la cartella (ad esempio “www.miodominio.com/nuovosito”).

      Quindi, nel momento in cui hai finito con il nuovo sito, dovrai copiare i due file .htaccess e index.php nella root (vedi punto 4), ma facendo attenzione ad una cosa.

      Molto probabilmente, il sito vecchio avrà già un file chiamato “index.php” nella root. Se non si chiama così si chiamerà “index.html”, “default.html”, “home.html” o qualcosa di simile, che ti fa capire che si tratta comunque della “index page”.

      In teoria, per fare la sostituzione finale da vecchio a nuovo ti basta rimuovere la “index page” del vecchio sito, che starà già nella root, e inserire il nuovo file index.php (sempre quello del punto 4).

      Subito dopo, ripulendo la cache del browser dovresti vedere che sulla URL principale (www.miodominio.com) ci sarà il nuovo sito.

      Dopodiché, per cancellare il vecchio sito anche dallo spazio di hosting, dovrai individuare i file del sito vecchio e cancellarli.

      N.B. Ti consiglio di fare un backup di tutto il sito vecchio prima di procedere sia con lo sviluppo del nuovo sito che con lo scambio finale tra vecchio e nuovo.

      Fammi sapere! ;)

      Ciao,
      Massimiliano

      Rispondi
  5. guendalina
    guendalina dice:

    Ciao Massimiliano, grazie del tuo articolo, ho seguito le procedure con facilità ma essendo le prime volte che mi confronto con “operazioni” del genere sto incontrando varie difficoltà.
    Il cliente ha un sito vecchio “www.esempio.it” ed un sito nuovo “www.prova.esempio.it”. Devo far apparire il sito nuovo al posto di quello vecchio. La domanda è:
    – i file htaccess e index devo copiarli nella cartella di filezilla dove c’era il vecchio sito (“www.esempio.it”)?
    – quando modifico l’index…nn avendo una cartella “/prova” ma un “prova.” come devo scrivere? ‘prova.wp-blog-header.php’ ?
    – nella cartella del sito originale, cancello il vecchio sito e lascio solo index e htaccess copiati dalla cartella del sito nuovo?
    spero di ricevere una tua risposta e grazie mille in anticipo!

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Guendalina,

      Grazie a te, sono contento che l’articolo ti sia stato utile.

      Capisco benissimo che essendo alle prime armi su questo tipo di operazioni ci possa essere un po’ di confusione. Non ti preoccupare, è normale ed è successo a tutti.

      Purtroppo però di devo dare una brutta notizia :)

      Quello che devi fare tu è una cosa un po’ diversa rispetto a quello che viene descritto in questo articolo.

      Anche se passi da un dominio di secondo livello (esempio.it) ad un dominio di terzo livello (prova.esempio.it), e anche se ti trovi all’interno dello stesso server, in realtà non ti basta operare solo sui file ma dovrai fare una sorta di migrazione.

      In particolare dovrai sostituire, all’interno del database, tutte le occorrenze del dominio “prova.esempio.it” con il dominio in cui dovrai trasferire il sito, ovvero “esempio.it”.

      Dopodiché dovrai copiare i files del nuovo sito (prova.esempio.it) e metterli dove ora si trovano quelli del vecchio (esempio.it).

      Purtroppo la procedura è un po’ complessa e probabilmente uno dei miei prossimi articoli sarà dedicato proprio a questo. Se hai ancora bisogno di chiarimenti puoi scrivermi attraverso il contact form presente nella pagina contatti.

      Ciao,
      Massimiliano

      Rispondi
  6. Massimiliano
    Massimiliano dice:

    Ciao Massimiliano complimenti per l’articolo veramente scritto bene, per quanto riguarda lo spostamento ok ci siamo ma se devo ad esempio rinnovare un vecchio sito con 4 pagine e 10 articoli nella pagina blog come funziona per fare in modo che gli attuali indirizzi rimangano invariati esempio nomesito.it/servizi etc… ?
    Grazie per una eventuale risposta ti auguro una buona giornata.

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao, grazie mille per i complimenti.

      Non so se ho capito esattamente quello che ti serve. Da quello che interpreto, tu probabilmente costruirai un nuovo sito all’interno dello stesso dominio ma su una nuova cartella, corretto?

      Quindi ad esempio, se il sito vecchio girava su www.miodominio.it, tu installerai un nuovo sito su www.miodominio.it/nuovacartella per poi, alla fine, effettuare la procedura indicata per “spostare” virtualmente tutto di nuovo sulla web root.

      A questo punto, non dovrai fare altro che fare in modo che tutti i permalink degli articoli e delle pagine abbiano esattamente la stessa nomenclatura del vecchio sito.

      Ad esempio, se il vecchio sito aveva:
      www.miodominio.it/pagina-1
      www.miodominio.it/pagina-2
      …..
      …..
      www.miodominio.it/articolo-1
      www.miodominio.it/articolo-2
      …..

      Dovrai fare in modo che il nuovo sito sia strutturato in questo modo:
      www.miodominio.it/nuovacartella/pagina-1
      www.miodominio.it/nuovacartella/pagina-2
      …..
      …..
      www.miodominio.it/nuovacartella/articolo-1
      www.miodominio.it/nuovacartella/articolo-2
      …..

      In questo modo dovresti stare a posto, perché quando “dismetterai” il vecchio sito e metterai online il nuovo (trasferendo i files index.php e .htaccess come indicato nell’articolo), il nuovo sito manterrà la stessa struttura di prima.

      Se poi, per qualsiasi motivo, ti troverai costretto a cambiare qualche permalink di qualche pagina, puoi sempre usare il plugin “Redirection”, che ti permette di fare un redirect automatico.
      Questo serve perché se il sito ha qualche pagina che veniva visitata molto spesso e sei stato costretto a cambiare il suo permalink, tutti quelli che tentano di atterrare sul vecchio link, verranno redirezionati sul nuovo.

      Fammi sapere come è va e se riesci a risolvere. Se ti va e ti fa piacere, aiutami a far crescere il blog e la mia pagina facebook mettendo un like e condividendo qualche articolo ;)

      Ciao, grazie!
      Massimiliano

      Rispondi
  7. kirpi

    Bene… e siamo riusciti a sbatterci fuori dal sito…
    Non sappiamo perché.
    Non ci prende più il login, né con l’url radice né con la sottocartella.
    Esisterebbe un modo per recuperarci il sito, oppure è tutto perso?
    :-|

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Se non hai cancellato nessun dato (né i files né il database) dovrebbe essere ancora tutto nel server e dovrebbe essere possibile recuperare tutto. Hai accesso al database? Che hosting provider usi? Scrivimi in privato tramite il contact form nella pagina contatti così cerco di darti una mano a recuperare l’accesso…

      Rispondi
      • kirpi

        Prima di tutto GRAZIE per la risposta rapidissima!
        Faccio ancora qualche prova, magari è la cache che non aggancia, o chissà…
        Non vorrei disturbare. Però se non riesco ti scrivo. Ancora grazie!

  8. gaia

    Grazie per il tuo contributo. Fatto tutto e tutto funziona. Il mio sito è in sottocartella e si visualizza nella root principale del dominio.
    Volevo solo che mi dipanassi un dubbio: nel momento in cui in admin si presentano aggiornamenti di plugin o dello stesso wordpress che si fa? Si procede allo stesso modo, come se tutti i file stessero nella stessa cartella?

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Gaia,

      Gli aggiornamenti dei plugin e di WordPress avvengono in automatico, non ti dovrai preoccupare di niente, esattamente come se il sito fosse nella web root.

      Se hai problemi fammi sapere.

      Ciao,
      Massimiliano

      Rispondi
  9. christian

    Buongiorno,
    esiste un metodo per installare Wp nella root principale, lavorarci, ma se l’utente digita il nome del dominio vede una pagina di cortesia (wp o html) e non il sito che sto creando?

    Il mio dubbio sorge dal fatto che se seguo la procedura descritta da te, una volta che “sposto” il sito se ho inserito link assoluti (es. www.nomedominio.it/cartellademo/contatti) non me li aggiorna nel Db
    grazie

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Christian,

      Si esiste un modo semplicissimo: puoi installare dei plugin come underConstruction oppure WP Maintenance Mode che ti permettono di mettere il sito, appunto, in modalità manutenzione.
      Inoltre ti consentono di personalizzare la pagina di cortesia.

      Se segui la procedura scritta da me si, devi stare attento ai link, ma a seconda del tema che viene usato ho potuto constatare che a volte il redirect viene gestito in automatico. Se, oltre a questo, cerchi anche di usare i path relativi invece che assoluti (ad esempio se devi mettere un link a questa pagina, invece di scrivere https://blogwp.it/trasferire-wordpress-nella-root/ inserisci solo /trasferire-wordpress-nella-root/) dovresti stare a posto.

      Ovviamente, alla fine, è sempre consigliato fare un collaudo prima di pubblicare il sito, per essere sicuro che tutto funzioni al meglio. In questo senso ti possono venire in aiuto sia Google Search Console che altri tool che controllano se ci sono dei broken link, come ad esempio il sito http://www.brokenlinkcheck.com/.

      Ciao,
      Massimiliano

      Rispondi
  10. Claudio

    Massimiliano,

    buongiorno. Grazie dell’articolo molto chiaro, io ho un problema simile (accedere al sito in http://www.ilmiosito.eu/nuovo come http://www.ilmiosito.eu/), ma leggendo mi sembra che le differenze siano: – è un’installazione multisite; – il sito “nuovo” da portare in root è in una sottodirectory (/nuovo/), che però non mi compare se sono in FTP sul server (Aruba); – il sito “vecchio” è oggi nella root (forse non è stata una saggia scelta, a suo tempo… che ne dici?).
    Come procedo?
    Grazie in anticipo.

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Claudio,

      Grazie a te, sono contento che l’articolo ti sia piaciuto.

      Purtroppo non ho molta esperienza con WordPress multisite, perché per i miei clienti ho sempre usato server separati e domini diversi, mentre se devo creare dei “mini” siti all’interno di uno stesso dominio, faccio comunque una nuova installazione di WP dentro una sottocartella e poi uso un sottodominio di terzo livello (es: sottodominio.dominioprincipale.it). In pratica, fino ad ora, non ho mai avuto la necessità di creare siti diversi che condividessero lo stesso database, gli stessi plugin, gli stessi temi, ecc.

      Detto questo, però, dal punto di vista pratico potrebbe non essere molto differente, andrebbe fatto qualche test.

      Se i due siti (vecchio e nuovo) sono due installazioni distinte, io proverei a procedere così:

      1) Farei un backup completo di tutta la cartella web root (quella che di solito si chiama public_html, www, ecc.), compresi i database di tutti i siti
      2) Rinominerei il file index.php del sito “vecchio”, che sta nella root e lo chiamerei “index.old”
      3) Farei una cosa simile con il file .htaccess del sito “vecchio”, rinominandolo in “.htaccess_old”
      3) Proverei a fare la procedura descritta nell’articolo (spostando il file index.php che sta nella cartella “nuovo”, modificandolo come indicato qui sopra, e il file .htaccess)
      4) Modificherei le impostazioni del pannello di controllo del sito nuovo (parametro “Indirizzo sito (URL)”)
      E vedrei se funziona così.

      Se non funziona puoi sempre ripristinare la situazione precedente cancellando il nuovo index.php e il nuovo .htaccess e ripristinando quelli vecchi, rimettendo il nome originale.

      Se invece i due siti sono semplicemente due istanze diverse di una sola installazione WordPress multisite, ti suggerisco di partire da questo articolo sul Codex di WordPress.

      Fammi sapere come va! ;)

      Ciao,
      Massimiliano

      Rispondi
  11. Mauro Brioschi
    Mauro Brioschi dice:

    Buongiorno

    grazie per l’articolo. seguendo le istruzioni ho fatto un errore e cerco aiuto per risolverlo.
    infatti seguendo il punto 5 delle istruzioni ho tolto (sbagliando) il nome della cartella dove era installato sia in “indirizzo sito (URL)” che in “indirizzo wordpress (URL)”. adesso non riesco più ad entrare sul beckend del sito wordpress . cosa mi consigli di fare per riabilitare il tutto ? e riaccedere in wp ?

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Mauro,

      Si può risolvere abbastanza facilmente se hai accesso al database (tramite phpMyAdmin ad esempio).

      Dovrai selezionare la tabella wp_options (ovviamente se hai modificato il prefisso delle tabelle, come consiglio nell’articolo su come rendere il sito più sicuro, avrai una stringa diversa al posto di “wp_”) e cercare i due parametri:

      • siteurl (con option_id = 1, quindi dovrebbe essere la prima riga della tabella)
      • home (con option_id = 2, quindi seconda riga)

      Il primo, “site_url”, corrisponde al paramentro del backend “Indirizzo WordPress (URL)” quindi, se non c’è già, devi reinserire anche il path della cartella (vedi lo screenshot del punto 5).
      Il secondo, “home”, corrisponde invece al parametro “Indirizzo sito (URL)”, dove ci va solo la URL del dominio principale, senza il nome della cartella.

      Se non riesci a risolvere contattami pure.

      Ciao,
      Massimiliano

      Rispondi
      • mauro BRIOSCHI
        mauro BRIOSCHI dice:

        Ciao Massimiliano, grazie mille risolto !

        ora ho provato a fare la procedura per il trasferimento del sito, controllando più volte i vari passaggi ma purtroppo nessun trasferimento avvenuto.
        questo era un sito già esistente che sto rifacendo ed ho parcheggiato in una sottocartella appunto.
        sapresti dirmi cosa verificare per sicurezza che sia tutto ok ?
        Grazie mille

      • Massimiliano
        Massimiliano dice:

        Ciao Mauro,

        Il sito è quello che inserisci qui quando lasci i commenti (magna e bevi)?

        Se è quello, sembra che manchi il file index.php opportunamente modificato, all’interno della root (vedi bene il punto 3 della guida).

        Se vuoi scrivimi via email che provo a darti una mano.

        Ciao,
        Massimiliano

  12. eric

    Ciao Massimiliano,
    Complimenti per l’articolo davvero spiegato benissimo!
    Io devo installare un sito wordpress in una sottocartella per lavorare al rinnovo di un sito già esistente ma matenendo online il sito “vecchio”. Dopo di chè procederò ai passaggi che hai descritto.
    Il problema è che creando un nuovo database, modificando il file di wordpress wp-config-sample.php in wp-config.php, inserendo i dati esatti del nuovo database, e nella root wordpress in una cartella che ho chiamato esempio “TEST” inserendola tramite FTP, quando vado a lanciare il comando http://sito.com/TEST/wp-admin/install.php mi esce Non è possibile contattare il server http://www.sito.com…
    Dove sbaglio?

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Eric,

      Grazie mille per i complimenti.

      Che hosting hai? Per alcuni hosting provider, oltre ad inserire DB_NAME, DB_USER e DB_PASSWORD, devi anche inserire l’indirizzo del server in cui si trova il database.
      Molti fornitori di hosting mantengono il server MySQL all’interno della stessa macchina (o fanno in modo che risulti così), e in quel caso il parametro DB_HOST può rimanere uguale a “localhost”, ma altri no, e quindi devi configurare correttamente anche quel parametro.

      Tuttavia, la cosa è strana perché il messaggio di errore che ti dovrebbe dare in questo caso è “impossibile stabilire una connessione con il database”, mentre così sembra che non venga trovato proprio il percorso.

      Hai provato anche ad omettere la parte finale, ovvero “wp-admin/install.php”. Io di solito mi limito ad inserire il percorso in cui ho installato il sito, che nel tuo caso dovrebbe essere una cosa tipo:
      http://sito.com/TEST/

      Fammi sapere se risolvi così! :)

      Ciao, grazie
      Massimiliano

      Rispondi
  13. Daniela

    Ciao stavo leggendo la tua procedura. Vorrei spostare il mio sito dalla sottocartella wordpress che ho creato al dominio principale. L’unico problema è che aprendo il file index.ph come dici tu, quello che mi esce è questo “<?php
    // Silence is golden."

    come posso fare secondo te?

    Grazie
    Daniela

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Daniela,

      In genere, quei file con dentro solo il commento “Silence is Golden” servono per non permettere l’accesso direttamente alle sottocartelle di WordPress.”In giro” per le sottocartelle del sito potresti trovare anche degli index.php vuoti, che hanno la stessa funzione.

      Ti faccio un esempio.

      La cartella “/wp-content/uploads”, ovvero quella dove vengono caricati i file media, dovrebbe contenere, oltre chiaramente alle immagini, un file index.php completamente vuoto oppure con il testo che dici tu. Questo permette di evitare che, un utente che conosca bene WP, possa accedere direttamente alla cartella uploads, attraverso il percorso www.miosito.com/wp-content/uploads e vedere o scaricare tutti i file che vi si trovano dentro.

      Nel tuo caso il problema è che quel file non dovrebbe stare all’interno della cartella principale di WordPress.

      Se il contenuto della tua cartella è questo:
      wordpress nella root files di installazione
      ovvero il file index.php è allo stesso livello delle cartelle wp-admin, wp-content e wp-include, questo dovrebbe contenere poche righe di codice, tra cui quella che indico io nell’articolo.

      Se non è così, deve essere successo qualcosa durante la copia, l’estrazione o il trasferimento dei file. Forse il file index.php con quel commento era già presente nella cartella e non è stato sovrascritto. Oppure è stato copiato per sbaglio dopo.

      La cosa più semplice, se si tratta di un sito nuovo, è che provi a copiare di nuovo i files originali di WordPress nella cartella, perché magari qualche file non è stato copiato. Oppure se sei sicura che il problema stia solo su quel file potresti provare a sovrascrivere l’index.php che hai tu con quello originale di WP.

      Altrimenti, se il sito è già online, bisognerebbe avere più informazioni per non rischiare di danneggiarlo e renderlo indisponibile. Puoi scrivermi qui l’indirizzo del sito, intanto per vederlo come utente?

      Se poi hai bisogno di una consulenza o un intervento specifico da parte mia puoi scrivermi attraverso il contact form della pagina contatti o direttamente su [email protected]

      Ciao,
      Massimiliano

      Rispondi
  14. Laura

    Ciao e complimenti per l’articolo.

    Mi sto occupando di un sito già creato in precedenza non da me e devo effettuare l’operazione di cui parli.

    Ho letto e seguito i tuoi passaggi. Fino al punto 4 compreso, tutto ok.
    Nel mio caso specifico, i parametri del backend di WordPress “Impostazioni / Generali” di cui al punto 5 non sono accessibili. Evidentemente, suppongo, sono stati precedentemente settati direttamente nel file wp-config.php (correggimi se sbaglio).
    A questo punto ho pensato di limitarmi ad editare questo file modificando il secondo parametro come dici tu nell’articolo (eliminando cioè la sottocartella) e salvare.
    Tuttavia questo metodo non funziona.
    Come pensi potrei risolvere?

    Grazie mille anticipatamente.

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Laura,

      Grazie mille, sono contento che l’articolo ti sia piaciuto.

      Si in effetti un altro modo per configurare i parametri a cui fai riferimento è quello di inserire queste due righe nel file wp-config.php:


      define('WP_HOME','http://esempio.it');
      define('WP_SITEURL','http://esempio.it');

      Viene spiegato più in dettaglio in questa pagina del codex di WordPress:
      https://codex.wordpress.org/it:Modificare_l%27URL_del_sito

      Come viene spiegato nella sezione “Cambiare l’URL del sito” (cito):
      “Non si tratta necessariamente del miglior metodo, semplicemente si codificano direttamente i valori direttamente dentro il sito. Utilizzando questo metodo non si potrà più modificare questi valori in Impostazioni->Generali.”

      Nel tuo caso dovresti aver configurato i due parametri del wp-config in questo modo:

      define('WP_HOME','http://esempio.it');
      define('WP_SITEURL','http://esempio.it/nomecartella');

      Dopodiché ti ricordo l’ultimo passaggio essenziale, ovvero il salvataggio dei permalink.

      Se non funziona neanche così, io proverei a cancellare quelle due righe di codice nel wp-config.php e poi a riprovare modificando i parametri dal backend.

      Fammi sapere se così risolvi. Se invece non risolvi neanche così, mandami una email su [email protected]

      Ciao,
      Massimiliano

      Rispondi
      • Laura

        Ciao Massimiliano,

        grazie mille per l’utilissima risposta.

        Conoscevo già quel link. Interessante notare che i parametri del wp-config.php siano in ordine scambiato rispetto a quelli del backend di WordPress (Impostazioni / Generali).

        Ho eseguito tutti i tuoi passaggi fino a salvare i permalink (che infatti risultano modificati passando dal contenere /myfolder alla sua eliminazione in tutti i permalink).

        Non ho ancora risolto (non ho provato ad eliminare le due righe di codice del wp-config perchè nel backend di WordPress ho visto che risulta come se l’avessi fatto da lì).

        Nel mio caso però c’è una condizione iniziale diversa rispetto a quella da te considerata. E’ impostato un redirezionamento del sito da miodominio.com a miodominio.com/myfolder.
        Credo quindi sia necessario rimuovere prima il reindirizzamento nel file .htaccess e poi seguire quanto da te descritto.

        Ti ho scritto qui per l’utilità eventuale di questi contenuti ad altri. Se ho problemi in questa modifica del file .htaccess ti scrivo per e-mail, se mi permetti.

        Grazie mille,
        Laura

      • Massimiliano
        Massimiliano dice:

        Ciao Laura,

        L’ordine scambiato non dovrebbe essere un problema, a meno che oltre all’ordine non vengono scambiati anche i valori. Quello sarebbe un problema.

        Il parametro WP_HOME deve avere il valore del dominio, la home del sito web, mentre il parametro WP_SITEURL in pratica rappresenta dove è stato installato WordPress.

        Passando al reindirizzamento sul .htaccess si, sicuramente quello genera dei conflitti. Tieni presente che al completamento della procedura, la pagina “/myfolder” non esisterà più, quindi WP ti darà errore 404 se tenti di visualizzare il contenuto di www.miodominio.com/myfolder.

        Fammi sapere. Se hai problemi contattami pure via email.

        Ciao,
        Massimiliano

  15. Laura

    Ciao Massimiliano,

    tutto perfettamente funzionante grazie alla tua guida.

    Volevo chiederti se il file .htaccess una volta impostato tutto come da te descritto, deve indicare nella forma base:

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    la cartella root “/” in modo che le righe siano “RewriteBase /” e “RewriteRule . /index.php [L]”

    oppure

    la cartella “/myfolder/” in modo che le righe siano “RewriteBase /myfolder/” e “RewriteRule . /myfolder/index.php [L]”

    Grazie in anticipo.

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Laura,

      Benissimo, sono molto contento che abbiamo risolto! :)
      Se ti fa piacere, ti invito a scrivere una recensione sulla mia pagina facebook oppure semplicemente a mettere un like per seguirmi.

      Ti riporto il link qui sotto per comodità:

      https://www.facebook.com/blogwp.it/

      Per quanto riguarda il file .htaccess, dovrebbe andare bene così. Tieni presente che quando vai su “impostazioni / permalink” e clicchi su SALVA, WP di solito riscrive tutto quello che gli serve nel .htaccess corrente, quindi non dovresti avere problemi.

      Negli .htaccess dei siti che gestisco io di solito è indicata solo la cartella root, non c’è nulla che si riferisca alla cartella in cui è installato il sito.

      Ciao,
      Massimiliano

      Rispondi
      • Laura

        Grazie mille per gli aiuti e senz’altro ti seguirò su FB.

        Ottimo, sì, io prima di compiere questa operazione avevo trovato nel file .htaccess che si trova sotto /myfolder (la sottocartella in cui è installato WP), l’indicazione della sottocartella nelle due istruzioni che ti ho riportato. L’ho lasciato così, mentre nell’ .htaccess di livello superiore ho indicato la root (altrimenti non funziona).

        Grazie ancora, ciao

  16. Cosimo

    Ciao Massimiliano,
    Ho seguito la tua procedura nei minimi dettagli ma nel dominio c’è ancora il sito vecchio.
    Dove sbaglio?

    Rispondi
  17. Silvia

    Ciao Massimiliano, complimenti per l’articolo.
    Volevo farle una domanda. Io ho bisogno di creare un’indirizzo del mio sito in ambiente di TEST (offline) richiesto dalla nostra banca per accettarsi di alcuni parametri. io mi appoggio ad aruba e wordpress scaricato dai loro servizi applicazioni.
    Posso usare il suo stesso procedimento per creare questo indirizzo momentaneo del sito? O come pensi che possa risolvere?
    Grazie mille in anticipo!
    Silvia

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Silvia,

      Mi fa molto piacere che l’articolo ti sia piaciuto.

      Si, in generale puoi installare un’altra istanza di WordPress all’interno di una nuova cartella ed usarla come piattaforma di test. Ti serve un database nuovo (meglio non usare lo stesso DB utilizzato per la piattaforma online), ma di solito Aruba ne da 5 con il servizio MySQL, quindi dovresti essere a posto, e devi assicurarti di avere abbastanza spazio web a disposizione.

      Attenzione perché non sarà veramente offline. Un sito è offline se, ad esempio, lo installi su un PC locale (come un laptop). Se lo installi sul server di Aruba sarà comunque online e potenzialmente accessibile. Quello che dovrai fare, quindi, è mettere il sito in modalità “manutenzione”, utilizzando un plugin come “Under Construction” o “WP Maintenance Mode”. In questo modo sarà visibile solo da chi possiede le credenziali per accedere da backend.

      Attenzione perché dopo aver installato il nuovo sito, NON dovrai fare le operazioni descritte nel paragrafo “Trasferire WordPress nella root del dominio senza spostare i file” di questo articolo. Inoltre, per accedere al sito, dovrai scrivere tutto il percorso completo, includendo la cartella in cui lo hai installato – es: www.miosito.com/nuovacartella.

      La procedura di installazione guidata di Aruba non la uso mai, ma penso che si possa usare.

      Io preferisco sempre fare l’installazione manuale perché mi da più controllo sui parametri di configurazione di WP.

      Se vuoi approfondire l’installazione manuale, leggi il mio articolo Installare WordPress Manualmente.

      Fammi sapere!

      Ciao,
      Massimiliano

      Rispondi
  18. Isacco Bosio
    Isacco Bosio dice:

    Buongiorno,
    avrei bisogno di un consiglio. Mi è stato commissionato un lavoro per un sito già esistente. La mia intenzione sarebbe quella di rifarlo appoggiandomi a WordPress. Essendo il vecchio sito piuttosto complesso ho necessità in corso d’opera di attingere alle informazioni presenti in esso. Consiglia pertanto di creare un ambiente wordpress in locale oppure di creare una sottocartella nella root del dominio (es. mydomain.com/wordpress) e lavorare in quella per poi procedere con la modifica dei puntamenti?

    La ringrazio per l’aiuto

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Isacco,

      Se per te va bene diamoci del tu, che sul web è più facile! :-)

      Capisco benissimo la tua esigenza, mi è capitata più volte una situazione simile e anche io mi sono chiesto quale fosse la soluzione migliore. Immagino anche che tu sia in cerca di una risposta secca ma per onestà ti devo dire che dipende tutto da vari fattori. Provo a riassumerti quali sono i principali secondo me.

      1) Hosting provider
      Su che tipo di hosting provider si trova il sito del cliente? Che risorse hai a disposizione? Se è una piattaforma già piuttosto lenta, andare a caricare un secondo sito su una cartella potrebbe appesantire anche il sito ufficiale, attualmente online. Se sei su un hosting un po’ più performante invece (per ulteriori approfondimenti puoi leggere questo mio articolo) potresti tranquillamente installare una seconda versione di WP senza incorrere in limitazioni di alcun tipo.

      2) Budget e tempi
      Cosa ti rimane più facile tra le due opzioni? Installare WP su una cartella e poi trasferirlo nella root, come vedi in questo articolo, è una cosa molto semplice e rapida. Installarlo in locale e poi fare la migrazione (considerando anche le azioni che dovrai fare sul DB, per cambiare il dominio), è sicuramente una cosa più complessa. Hai abbastanza budget? Il lavoro ti è stato pagato bene e hai preventivato anche delle ore per operazioni di questo tipo? Insomma ci rientri con i costi?

      3) Velocità di connessione (tua) e banda dell’hosting provider
      Che tipo di connessione hai? Caricare i contenuti multimediali, soprattutto video, sul server remoto impiega più tempo rispetto all’inserimento dei file in locale. Inoltre, i Service Provider a volte di danno una banda mensile limitata, quindi potrebbe convenire fare un unico trasferimento in una volta, quando hai finito tutto, piuttosto che varie prove (upload, cancellazione, upload di nuovo, poi sbagli file, cancelli il vecchio, ricarichi quello sbagliato, ecc.).

      4) Sicurezza
      Se fai tutto direttamente nel server del cliente, se ti hackerano il sito vecchio perché non aggiornato, viene impattato anche il sito nuovo, e viceversa. Ovviamente nel secondo caso stai più tranquillo perché installerai le ultime versione di WP, dei plugin e del tema che utilizzerai, tuttavia ti consiglio di ridurre i rischi installando da subito un plugin per la sicurezza, come ad esempio Wordfence.

      5) Indicizzazione
      Questo è solo un reminder/consiglio: ricordati di impostare il file robot.txt in modo che la cartella dove si trova il sito nuovo non venga indicizzata fintanto che il sito stesso è in fase di sviluppo. E alla fine ricordati di togliere il file o riconfigurarlo opportunamente. Ti assicuro che può capitare, soprattutto in fase di consegna finale, se il cliente ti mette fretta! :)

      Per il momento mi sembra tutto ma se mi viene in mente altro ti scrivo. Naturalmente se hai dubbi o domande non esitare a rispondere a questo commento e ti ricordo, se ti va, di lasciare un like o un feedback sulla nostra pagina facebook!

      Ciao,
      Massimiliano

      Rispondi
  19. Lorenzo

    Ho sviluppato volontariamente il mio sito in WP in una sottocartella denominata ‘website’ e seguendo questa guida ho configurato il tutto per vederlo nella versione miodominio.com e non più miodominio.com/website.

    Il problema che riscontro adesso è il fatto che non posso creare/modificare pagine e/o articoli.
    Come posso risolvere questo problema?

    Grazie,
    Lorenzo

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Lorenzo,

      Nel “trasferimento” sulla root, o meglio per visualizzare il sito nel dominio principale, hai seguito tutti i passaggi indicati in questo articolo?
      Nello specifico, hai provato a salvare i permalink e poi cancellare la cache del browser?

      Ciao,
      Massimiliano

      Rispondi
      • Lorenzo

        Ho seguito alla lettera la guida e nel fare altri esperimenti ho scoperto che solo con Safari ho questo problema.

        Grazie tante per l’aiuto

      • Massimiliano
        Massimiliano dice:

        Prego Lorenzo, mi fa piacere esserti stato d’aiuto.

        L’ultima prova che ti posso dire di fare è aprire una pagina incognito con Safari e riprovare. Se il problema non si ripresenta, significa che è andato storto qualcosa con la cancellazione della cache di Safari.

        Se poi vuoi approfondire puoi aprire una richiesta di supporto scrivendomi nella pagina contatti.

        Ciao, buona giornata!
        Massimiliano

  20. FABRIZIO PUTIGNANO
    FABRIZIO PUTIGNANO dice:

    Grazie mille veramente, questo è l’unico tutorial a prova di stupido che c’è in giro online su questo processo.
    Complimenti

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Beh Fabrizio, che dire… il tuo è uno dei commenti più divertenti e nello stesso tempo più lusinghieri che io abbia mai ricevuto. Grazie e se hai bisogno di una mano scrivimi pure attraverso il contact form della pagina contatti. Se ti va metti un like sulla pagina di blogwp.it! :-) Ciao, grazie!

      Rispondi
  21. Lorena

    Grazie per l’articolo, volevo solo fare una domanda forse un po’ banale ma che mi crea delle perplessità. Ho un sito vecchio (non mio) costruito in html senza db su Aruba ed ora è giunto il momento di installare WP e di cambiarlo completamente. Non ci interessa mantenere quello vecchio ma partire subito con il nuovo e quindi con l’installazione. Mi chiedevo, prima di installare WP, se fosse necessario cancellare l’attuale index.html (e tutto il relativo contenuto vecchio) o se questa fosse un’operazione da fare dopo l’installazione. Grazie ancora e complimenti per il blog!

    Rispondi
    • Massimiliano
      Massimiliano dice:

      Ciao Lorena,

      No non devi necessariamente cancellare prima l’index.html.

      Io fare l’installazione di WP dentro una cartella (es: “nuovacartella”), come indicato in questo articolo, e poi in fase di sviluppo lavorerei su www.nomesito.com/nuovacartella.
      In questo modo, tutto quello che farai a livello di file non entrerà in conflitto con gli altri file presenti all’interno dell’hosting, ovvero con il sito già esistente.

      Poi, quando hai finito tutto, dovrai fare la migrazione e in quella fase allora si, dovrai o cancellare o cambiare nome al vecchio file index.html.

      Per sicurezza, visto che dovrai lavorare su un sito in produzione/live, ti consiglio di fare prima un backup di tutto ciò che trovi nell’hosting (nel tuo caso solo file visto che mi dici che il sito è in html, senza DB).

      Fammi sapere se è tutto chiaro! :)

      Ciao,
      Massimiliano

      Rispondi
      • Lorena

        Ciao Massimiliano, grazie della tua risposta! Sì sì ho già fatto il backup, anche se i file erano pochi e di poca importanza. Grazie ancora e buon lavoro :)

      • Massimiliano
        Massimiliano dice:

        Ottimo! Sono contento di esserti stato utile! Se ti va, ti ricordo di mettere un like sulla pagina Facebook o di iscriverti alla newsletter per rimanere aggiornata sui contenuti del blog! :)

        Buon lavoro!
        Massimiliano

  22. Carmelo

    Ciao Massimo. Complimenti per l’articolo, chiaro ed esauriente.
    Ti espongo il mio problema: mi appoggio ad Aruba e sto lavorando ad un nuovo sito web. Ho installato WordPress, in ambiente Linux, in una cartella denominata wp.
    Al momento ho caricato solo il template e se visualizzo il sito tramite l’indirizzo di produzione lnx.nomesito.com/wp non ho alcun problema.
    Se, invece, lo visualizzo (dopo le indicazioni da te fornite, cioè copiare ed incollare nella root i files index – modificato – e htaccess) tramite indirizzo www.nomesito.com accade che le icone dei social, dei menu ecc appaiono come rettangolini senza contenuto.
    Perchè accade e come posso rimediare?
    Ti sarei grato se mi rispondessi prima possibile.
    Grazie

    Rispondi
      • Massimiliano De Stefano
        Massimiliano De Stefano dice:

        Ciao Carmelo,

        Mi fa molto piacere che l’articolo ti sia piaciuto e sono contento che tu abbia risolto.

        Allo stesso tempo, ci tengo per chiarezza a precisare che non prevediamo delle tempistiche di risposta immediate. Essendo tutto quello che scrivo qui un “regalo” :) per la community di WordPress, dettato dalla volontà di condividere, con chiunque sia interessato, le soluzioni che trovo di volta in volta nel mio lavoro, rispondo in modalità “best effort”, ovvero appena posso.

        Probabilmente, cambiando percorso, WP non trovava più le immagini delle icone.

        Ora non so come è stato configurato WP, ma probabilmente per poter vedere bene tutto il sito, al termine dello sviluppo, dovrai cambiare all’interno del database il dominio “lnx.nomesito.com” con “www.nomesito.com”.

        Se hai bisogno di confronti in modalità “best effort” scrivimi pure qui. Altrimenti, se hai scadenze e ti serve un supporto professionale con delle scadenze precise, puoi sempre contattarmi tramite la pagina contatti e richiedere una consulenza professionale specifica.

        Ciao, buon lavoro!
        Massimiliano

  23. ROBERTO TESTINI
    ROBERTO TESTINI dice:

    Ciao Massimiliano, complimenti per il tuo l’articolo, molto chiaro e preciso.

    Avrei gentilmente bisogno di un consiglio. Ho un sito sviluppato in WP con tema “custom”.
    Ora, avrei bisogno di realizzare alcune landing page con WP ed un tema premium, tipo Enfold/Avada/Divi ecc. Avevo quindi pensato di installare WP in una nuova cartella, chiamandola ad esempio “/landing” .
    Una volta fatto questo e volendo andare a ”nascondere” il nome della cartella “/landing” come posso fare?
    Nella root principale ci sono già i 2 file ai quali fai riferimento nel tuo articolo, quelli del sito principale, e di conseguenza non posso copiare i medesimi file presenti nella cartella “/landing” della nuova installazione. Spero di essermi spiegato.

    Grazie mille in anticipo!
    Roberto

    Rispondi
    • Massimiliano De Stefano
      Massimiliano De Stefano dice:

      Ciao Roberto,

      Mi fa molto piacere che il mio articolo ti piaccia e che ti sia stato utile! :)

      Se ho capito bene quello che vorresti fare, a quanto ne so io, non si possono tenere due versioni di WordPress diverse e utilizzare la stessa Home URL.

      In altre parole, uno dei due siti si può “trasferire” nella domain root (es: www.miodominio.it) ma il secondo no, deve stare nella sua cartella distinta e non si può “nascondere” il nome della sua cartella. Ci sarebbe, infatti, un conflitto.

      Se intendevi una cosa diversa fammi sapere.

      Ciao,
      Massimiliano

      Rispondi
  24. ROBERTO TESTINI
    ROBERTO TESTINI dice:

    Ciao Massimiliano e grazie per la tua gentile risposta.
    Il mio intento era di “nascondere” il nome della cartella “/landing”
    per fare in modo che poi l’url fosse più semplice da leggere e ricordare…

    da: www.miosito.com/landing/pippo
    diventa: www.miosito.com/pippo

    Ma da quanto hai scritto non c’è modo per ottenere questo risultato.

    Grazie ancora,
    Roberto

    Rispondi
    • Massimiliano De Stefano
      Massimiliano De Stefano dice:

      Ciao Roberto,

      Prego, mi fa piacere esserti stato d’aiuto! :)

      Aggiungo qualche considerazione per essere sicuro di aver capito bene cosa vuoi sapere.

      Quello che intendo è che, sempre a quanto ne so io, si può fare per un solo sito alla volta.

      Se hai solo un’istanza di WP, installata nella cartella landing, allora è tutto fattibile. Si fa in modo che il sito, installato nella cartella “landing”, risulti installato (per dirlo in termini semplici) nella domain root. Per fare questo basta seguire quanto descritto in questo articolo.

      Se, tuttavia, hai due istanze di WP installate in due cartelle, nello stesso spazio di hosting, associato allo stesso dominio, come ad esempio:

      www.miosito.com/landing1
      www.miosito.com/landing2

      allora, in questo caso, seguendo le indicazioni di questo articolo, si può fare in modo di “nascondere” solo una delle due “cartelle”: quindi dovrai scegliere se fare in modo che risulti installato nella domain root o tutto il sito che sta dentro landing1 o tutto il sito che sta dentro landing2. Puoi anche cambiare in corso d’opera e fare in modo che se prima il sito visibile nel dominio principale era “landing1”, cambiando configurazione, il nuovo sito visibile nella root diventi quello installato dentro la cartella “landing2”. Credo però che non si possa fare una cosa mista.

      Tuttavia ti dico “credo” perché può essere che smanettando un po’ con il file .htaccess si possa fare qualcosa. Ti suggerisco quindi di cercare su Google materiale inerente a come modificare i permalink con l’htaccess, per toglierti ogni dubbio.

      Ciao,
      Massimiliano

      Rispondi
  25. luca camillo
    luca camillo dice:

    Grazie per l’utile guida (che seguirò quanto prima). Pensavo di sfruttare la possibilità di avere più installazione wordpress in sottocartelle diverse da utilizzare come ambiente di staging e di test per diversi siti. Ho però il dubbio della gestione del Database MySql. Devo avere una database individuale per ogni installazione WP o ipoteticamente potrei avere numerose installazioni diverse su un unico database?

    Rispondi
    • Massimiliano De Stefano
      Massimiliano De Stefano dice:

      Ciao Luca,

      Mi fa molto piacere che tu ritenga utile questa guida!

      Potresti anche utilizzare anche un database singolo, facendo molta attenzione e cambiando il prefisso delle tabelle ad ogni nuova installazione.

      Tuttavia, è molto meglio creare un database dedicato per ogni istanza di WP, sia per motivi di sicurezza che per semplicità di gestione (ad esempio backup, interventi manuali, aggiornamenti del DB nel caso di istanze con versioni di WP diverse, ecc.).

      Ciao, buon lavoro!
      Massimiliano

      Rispondi
  26. Albe

    Ciao.
    Ho seguito la tua guida e purtroppo mi dà questo errore.

    Parse error: syntax error, unexpected ” );’ (T_ENCAPSED_AND_WHITESPACE) in
    Come posso risolvere?
    Grazie!

    Rispondi
  27. Luca

    Buonasera, complimenti per l’articolo, ho seguito la procedura da Lei descritta, avendo sviluppato un sito web in una sotto cartella “TEST” , mi ritrovo nella situazione di dover “trasferire” il lavoro nella radice root.
    Quindi, ho copiato i due file del mio wordpress, index.php e htaccess nella radice root (vuota).
    Ho moficato index.php il parametro require dir in :
    require __DIR__ . ‘./TEST/wp-blog-header.php’; in linea 17 del file
    e ho un errore di tipo 500
    nel file error_log, ho un’elenco smisurato di:
    [04-Dec-2020 18:55:40 Europe/Rome] PHP Warning: require(/home/millepiante/public_html./TEST/wp-blog-header.php): failed to open stream: No such file or directory in /home/millepiante/public_html/index.php on line 17

    Che sia un problema di scrittura sul file htaccess?

    # BEGIN
    # Le direttive (linee) tra `BEGIN ` e `END ` sono
    # generate dinamicamente, e dovrebbero essere modificate solo tramite i filtri di WordPress.
    # Ogni modifica alle direttive tra questi marcatori verrà sovrascritta.

    # BEGIN WordPress
    # Le direttive (linee) tra `BEGIN WordPress` e `END WordPress` sono
    # generate dinamicamente, e dovrebbero essere modificate solo tramite i filtri di WordPress.
    # Ogni modifica alle direttive tra questi marcatori verrà sovrascritta.

    RewriteEngine On
    RewriteBase /TEST/
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /TEST/index.php [L]

    # END WordPress
    # BEGIN LiteSpeed
    # Le direttive (linee) tra `BEGIN LiteSpeed` e `END LiteSpeed` sono
    # generate dinamicamente, e dovrebbero essere modificare solo con i filtri di WordPress.
    # Ogni modifica alle direttive tra questi marcatori sarà sovrascritta.

    SetEnv noabort 1

    # END LiteSpeed
    # END
    # BEGIN LiteSpeed
    # Le direttive (linee) tra `BEGIN LiteSpeed` e `END LiteSpeed` sono
    # generate dinamicamente, e dovrebbero essere modificare solo con i filtri di WordPress.
    # Ogni modifica alle direttive tra questi marcatori sarà sovrascritta.

    SetEnv noabort 1

    # END LiteSpeed

    saluti

    Luca

    Rispondi
    • Massimiliano De Stefano
      Massimiliano De Stefano dice:

      Ciao Luca,

      Mi fa molto piacere che l’articolo ti sia piaciuto e ti sia stato utile.

      Penso che ci sia un punto di troppo qui:
      require __DIR__ . ‘./TEST/wp-blog-header.php’

      Non serve il punto prima dello slash, la stringa corretta è questa:

      require __DIR__ . ‘/TEST/wp-blog-header.php’

      Occhio anche all’editor che usi per fare le modifiche al codice. Mi sembra che le virgolette che stai utilizzando non siano quelle “standard”, ovvero quelle che ho inserito io. Non so se è un problema dell’editor di WP, e quindi il “problema” si manifesta solo qui, oppure se è un problema del tuo editor. Che cosa usi tu?

      Fammi sapere se hai risolto! ;)

      Ciao,
      Massimiliano

      Rispondi
  28. NICOLA PARENTE
    NICOLA PARENTE dice:

    Buongiorno. Ho bisogno di alcune informazione se è possibile. La mia domanda è questa:
    io ho un sito su hosting Aruba del tipo www.ilmiosito.it realizzato con piattaforma Websitex 5. Vorrei cambiare piattaforma è realizzarlo in wordpress. Secondo te la soluzione quale sarebbe? Io farei così: installazione di wordpress in una sottodirectory della root del dominio del tipo www.ilmiosito.it/test e una volta realizzato il sito nuovo in wordpress trasferirlo nella root principale eliminando il sito vecchio. Secondo te è giusta come operazione? Ci saranno dei problemi lato seo? Ti ringrazio.

    Rispondi
    • Massimiliano De Stefano
      Massimiliano De Stefano dice:

      Ciao Nicola,

      Sì, da quello che scrivi mi sembrano i passaggi corretti. Anche io farei così.

      Come informazione in più, aggiungo solo che non è strettamente necessario fisicamente trasferire i file di WP dalla cartella alla root. Basta seguire i passaggi presenti in questo articolo per fare in modo che il sito risulti installato nella root del dominio, anche se poi i file di WP sono in una sottocartella.

      La SEO non è il mio campo, ma da quello che so dovresti assolutamente cercare di mantenere intatte le URL delle nuove pagine, in modo che tutto ciò che è già ben indicizzato e posizionato rimanga tale, o quantomeno fare dei redirect.

      Prego! :-)
      Massimiliano

      Rispondi
  29. Mario

    ciao, ho un problema e non ne vengo a capo
    ho spazio su aruba (win+linux)
    ho pubbliato wp sullo spazio linux (da softaculous), quindi come spazio mi propone solo quello lnx.webmasterone.ti
    ho provato a seguire la tua guida, ma , nonostante funzioni (url della root con i file nella sottocartella) mi restano 2 problemi:

    1) nella pagina del sito manca la barra in alto che compare quando sono loggato (se in impostazioni / generali/ indirizzo sito(URL) rimetto https://lnx.webmasterone.it/wp al poto di https://lnx.webmasterone.it ricompare correttamente la barra
    2) mi lascia lnx nella url, mentre io vorrei che la sostituisse con www……

    mi sai aiutare per cortesia, perchè non ne vengo a capo ?

    Rispondi
    • Massimiliano De Stefano
      Massimiliano De Stefano dice:

      Ciao Mario,

      Certo, ti aiuto volentieri.

      Per Aruba, ora non ricordo a memoria perché non lo sto usando da un po’ di tempo, ma il concetto è che quando si hanno spazi di hosting windows + linux bisogna indicare, sul pannello di controllo, qual’è il dominio principale. In questo modo “toglie” “lnx” nella URL.

      Per quanto riguarda invece la barra in alto, dovrei indagare maggiormente perché così senza vedere niente non si capisce bene. Se vuoi puoi prenotare una consulenza specifica per la tua problematica, con un intervento programmato, attraverso la pagina contatti.

      Ciao,
      Massimiliano

      Rispondi
  30. Danilo Conigliaro
    Danilo Conigliaro dice:

    Ciao Massimiliano, sei stato chiarissimo, io però ho un problema, quando voglio fare la personalizzazione visuale del tema (materialis pro) il custumizer va in stallo

    Rispondi
    • Massimiliano De Stefano
      Massimiliano De Stefano dice:

      Ciao Danilo,

      Ottimo, mi fa piacere che l’articolo sia chiaro. L’ho scritto per WordPress in generale, il più generico possibile proprio perché poi ogni tema è a sé e ha comportamenti diversi.
      Ti posso dire che è strano, ci deve essere qualcosa che non va con il tema perché generalmente, se tutto è configurato correttamente, dovrebbe funzionare bene a prescindere dalla cartella in cui scegli di installare WP.

      Per risolvere il tuo caso specifico, se vuoi, puoi prenotare una consulenza attraverso la pagina contatti.

      Ciao,
      Massimiliano

      Rispondi

Lascia un Commento

Vuoi partecipare alla discussione?
Sentitevi liberi di contribuire!

Lascia un commento

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