Ci sono molte ragioni per cui potreste voler clonare il vostro sito WordPress. Forse state lanciando un secondo sito e volete usare il primo come modello di base per risparmiare tempo. O forse avete bisogno di una replica esatta come backup o per fare prove di sviluppo, oltre al tipico ambiente di staging.

Qualunque siano le vostre ragioni, con Kinsta è davvero un gioco da ragazzi. Seguite i passaggi qui sotto e scoprite come clonare un sito WordPress in pochi clic!

Clonare un Sito WordPress in MyKinsta

La funzione di clonazione di Kinsta copia l’intero database WordPress, inclusi tutti i contenuti e i file. Nuove credenziali di accesso, come SFTP, SSH, SSH, nome utente e password del database vengono generate automaticamente per il nuovo sito clonato e saranno accessibili dalla bacheca.

Passo 1

Sfogliate i siti nel cruscotto MyKinsta e cliccate su “Aggiungi sito” in alto a destra.

Aggiungere un sito su MyKinsta.
Aggiungere di un sito su MyKinsta.

Passo 2

Selezionate l’opzione “Clona un ambiente esistente” e scegliete un sito da clonare. Assicuratevi di specificare se clonare l’ambiente live o quello di staging.

Clonazione di un ambiente esistente.
Clonazione di un ambiente esistente.

Se avete già un nome di dominio in mente, potrete inserirlo in questo momento. Altrimenti, il sito verrà clonato con un dominio kinsta.cloud. Infine, inserite un nome per il sito clonato. Da notare: la località non può essere modificata durante il processo di clonazione. Se desiderate che il sito clonato venga posizionato in una località diversa, contattate il nostro team di supporto per spostare il sito al termine del processo di clonazione.

Scegliere l'ambiente da clonare e aggiungere il sito
Scegliere l’ambiente da clonare e aggiungere il sito

E questo è tutto! Il processo di clonazione richiede in genere da 10 a 20 minuti a seconda delle dimensioni del sito WordPress e del database. Apparirà quindi nell’elenco dei siti nel vostro cruscotto MyKinsta. Nota: se il processo di clonazione richiede più di un’ora, si consiglia di contattare il nostro team di supporto.

Un sito clonato su MyKinsta.
Un sito clonato su MyKinsta.

Dopo la Clonazione del Sito WordPress

Se non avete inserito un dominio personalizzato durante il processo di clonazione, allora gli verrà automaticamente assegnato un URL temporaneo per potervi accedere, come myclone.kinsta.cloud. Se si dispone di un altro dominio che si desidera utilizzare, è possibile fare clic sulla sezione “Domini” e aggiungerlo.

Sarà quindi necessario aggiornare l’indirizzo WordPress URL e l’indirizzo del sito URL. E se avete hardcoded i vostri indirizzi URL nel file wp-config.php, anche questo dovrà essere aggiornato.

Dopo aver assegnato un dominio personalizzato al sito, potete generare un certificato SSL gratuito e distribuire Kinsta CDN in MyKinsta. Per ulteriori informazioni su come andare live con un sito su Kinsta, consultate questo articolo.

Note aggiuntive

  • Se avete dei plugin CDN abilitati o plugin di terze parti con URL codificati, assicuratevi di aggiornarli per riflettere il nuovo indirizzo del sito. In caso contrario, il contenuto potrebbe apparire danneggiato, mentre in realtà è semplicemente puntato a un indirizzo errato.
  • A differenza dei siti di staging, i siti WordPress clonati sono completamente separati, il che significa che contano sul numero totale di siti consentiti dal piano e saranno fatturati per l’utilizzo della larghezza di banda. Ciò significa anche che la funzione di clonazione è disponibile solo in Pro o piani superiori (che permettono di avere più di un sito).
  • Se utilizzate plugin di programmazione social come CoSchedule o Social Networks Auto Poster, ricordate che potrebbero iniziare a condividere il contenuto del vostro sito clonato. Quindi assicuratevi di aggiornare i vostri indirizzi URL o disattivare questi plugin, altrimenti questo potrebbe falsare le vostre statistiche.

Clonare il proprio sito WordPress con l’API di Kinsta

Con l’API di Kinsta, è possibile clonare programmaticamente l’intero database WordPress, inclusi i contenuti e i file. Ciò significa che è possibile eseguire tutte le azioni offerte da MyKinsta attraverso l’API di Kinsta.

Per avviare il processo di clonazione con l’API di Kinsta, sono necessarie le seguenti informazioni:

  • Una chiave API
  • L’ID dell’azienda, e
  • L’ID dell’ambiente del sito che si desidera clonare

Esaminiamo i passaggi per clonare un sito WordPress esistente con Kinsta API:

Fase 1: generare una chiave API

Per utilizzare l’API di Kinsta, è necessario generare una chiave API. Questa viene utilizzata per autenticarsi e accedere al proprio account. Ecco come generare una chiave API:

  1. Accedere al cruscotto MyKinsta.
  2. Accedere alla pagina Chiavi API cliccando sul proprio nome, poi selezionare** Impostazioni dell’Azienda e infine Chiavi API**.
  3. Fare clic sul pulsante Crea chiave API.
  4. Scegliere una data di scadenza o impostare una data di inizio personalizzata e specificare il numero di ore di validità della chiave..
  5. Assegnare alla chiave un nome univoco e descrittivo.
  6. Cliccare su Genera per creare la chiave API.
Creare una chiave API in MyKinsta.
Creare una chiave API in MyKinsta.

Quando si crea una chiave API, copiarla e conservarla in un luogo sicuro, poiché questo è l’unico momento in cui è possibile visualizzarla. YÈ possibile generare più chiavi API, che saranno elencate nella pagina Chiavi API. Se è necessario revocare una chiave API, fare clic su Revoca accanto a quella che si desidera revocare.

Fase 2: copiare l’ID dell’Azienda

L’ID dell’azienda si trova in MyKinsta in Azienda > Dati Fatturazione > ID.

Copiare l'ID dell’Azienda.
Copiare l’ID dell’Azienda.

Fase 3: ricavare l’ID ambiente del sito che si vuole clonare

Esistono due metodi per ottenere l’ID ambiente di un sito: recupero manuale dall’URL o programmatico tramite una richiesta API

Per recuperare manualmente l’ID ambiente, è possibile aprire il sito su MyKinsta e copiare le informazioni dell’ID ambiente come indicato di seguito:

Ottenere manualmente l'ID ambiente del sito
Ottenere manualmente l’ID ambiente del sito

In alternativa, è possibile recuperare programmaticamente l’ID dell’ambiente utilizzando l’API di Kinsta. Ciò consiste nel recuperare un elenco di tutti i siti utilizzando l’endpoint /sites. Ecco un esempio in cui si utilizza il metodo Fetch API JavaScript:

const fetchAllSites = async () => {
  const query = new URLSearchParams({
    company: "YOUR_COMPANY_ID"
  }).toString();

  const resp = await fetch(`https://api.kinsta.com/v2/sites?${query}`, {
    method: "GET",
    headers: {
      Authorization: "Bearer <YOUR_TOKEN_HERE>"
    }
  });

  const data = await resp.json();
  console.log(data);
};

fetchAllSites();

Nel codice precedente, viene definita una funzione asincrona denominata fetchAllSites. Esegue una richiesta GET all’endpoint /sites con l’ID dell’azienda specificato. Assicurarsi di aggiungere il token API per gestire l’autorizzazione. I dati della risposta vengono quindi registrati nella console.

Dopo aver recuperato tutti i siti, si riceverà un array di oggetti, dove ogni oggetto rappresenta un sito e contiene dettagli come ID, nome, stato ed etichette del sito. Ecco un esempio della struttura JSON:

{
    "company": {
        "sites": [
            {
                "id": "YOUR_SITE_ID",
                "name": "my-test-site",
                "display_name": "Test site",
                "status": "live",
                "site_labels": []
            }
        ]
    }
}

Per ottenere programmaticamente l’ID ambiente di un sito specifico utilizzando l’API di Kinsta, copiare l’ID del sito che si desidera clonare. Quindi, utilizzare tale ID per recuperare gli ambienti associati a quel sito.

Ecco un esempio che dimostra come recuperare l’ID dell’ambiente:

const fetchEnvironmentId = async () => {
  const siteId = "YOUR_site_id";
  const resp = await fetch(
    `https://api.kinsta.com/v2/sites/${siteId}/environments`,
    {
      method: "GET",
      headers: {
        Authorization: "Bearer <YOUR_TOKEN_HERE>"
      }
    }
  );

  const data = await resp.json();
  console.log(data);
};

fetchEnvironmentId();

Assicurarsi di sostituire “YOUR_SITE_ID” con l’effettivo ID del sito che si vuole clonare e <YOUR_TOKEN_HERE> con la chiave API di Kinsta.

Quando la funzione fetchEnvironmentId viene eseguita, la risposta conterrà i dettagli dell’ambiente del sito, compreso l’ID dell’ambiente. Ecco un esempio di risposta:

{
    "site": {
        "environments": [
            {
                "id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
                "name": "first-site",
                "display_name": "First site",
                "is_blocked": false,
                "id_edge_cache": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
                "is_premium": false,
                "domains": [],
                "primaryDomain": {},
                "ssh_connection": {}
            }
        ]
    }
}

Fase 4: clonare un sito esistente con Kinsta API

A questo punto, si dispone di tutti i requisiti necessari per clonare un sito con l’API di KInsta. Procedere all’invio di una richiesta API POST all’endpoint /sites/clone passando i seguenti dati come payload:

  • Il nome visualizzato del sito
  • L’ID dell’azienda
  • L’ID dell’ambiente del sito che si desidera clonare

Ecco come apparirà la richiesta API:

const cloneExistingSite = async () => {
  const resp = await fetch(`https://api.kinsta.com/v2/sites/clone`, {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      Authorization: "Bearer <YOUR_TOKEN_HERE>"
    },
    body: JSON.stringify({
      company: "COMPANY_ID",
      display_name: "Copy of First WP Site",
      source_env_id: "ENVIRONMENT_ID"
    })
  });

  const data = await resp.json();
  console.log(data);
};

cloneExistingSite();

Nel codice qui sopra, la funzione cloneExistingSite invia una richiesta POST all’endpoint /sites/clone. La richiesta include gli headers necessari, come il tipo di contenuto e il token API per l’autorizzazione. Il corpo della richiesta contiene i dati richiesti, come l’ID della società, il nome visualizzato per il nuovo sito e l’ID dell’ambiente di origine del sito che si desidera clonare.

La risposta dell’API viene quindi registrata nella console e mostra che l’operazione di clonazione del sito è in corso:

{
  "operation_id": "site:clone-54fb80af-576c-4fdc-ba4f-b596c83f15a1",
  "message": "Cloning site in progress",
  "status": 202
}

È possibile usare l’endpoint /operations per monitorare lo stato di un’operazione e sapere quando un’operazione come questa è stata completata.

Clonare un Sito WordPress con un Plugin

Se il vostro fornitore di hosting, a differenza di Kinsta, non dà la possibilità di clonare facilmente un sito dal cruscotto di hosting, sarà necessario utilizzare un plugin per farlo.

Il plugin Duplicator consente di creare un duplicato del proprio sito da poter utilizzare per creare un nuovo sito. Ecco come fare.

Creare un Duplicato del Sito

Andate su Duplicator nel menu di amministrazione e cliccate sul pulsante Crea nuovo. Questo creerà un “pacchetto” che conterrà un duplicato del sito.

Pagina di configurazione del plugin Duplicator
Pagina di configurazione del plugin Duplicator

Nella schermata di Configurazione, specificare quali file si desidera duplicare e quali tabelle del database, oppure lasciare tutto al valore predefinito, che includerà tutte le tabelle e i file del database. Apportare modifiche nella sezione Installer se si desidera personalizzare la nuova installazione o lasciarla alle impostazioni predefinite. Fare clic sul pulsante Avanti.

Il plugin eseguirà la scansione del sito e fornirà eventuali avvisi prima di effettuare la duplicazione. Se ci sono problemi, prendetevi il tempo di risolverli ora. Se c’è un avviso, è necessario selezionare la casella di controllo sotto l’elenco degli elementi di scansione prima di procedere.

Fare clic sul pulsante Build per continuare. Il plugin costruirà il “pacchetto” che contiene tutto nel sito: temi, plugin, uploads, e anche WordPress stesso. Scaricate il pacchetto sul computer cliccando sul link One-click Download. Ci saranno due file: installer.php e archive.zip.

Installazione del Duplicato in una Nuova Posizione

Per installare il pacchetto in un nuovo sito, è necessario caricare i due file appena scaricati sul nuovo sito, utilizzando l’SFTP. Caricateli nella directory principale del vostro sito o nella directory dove volete installare WordPress. Non installate WordPress: il programma di installazione lo farà per voi.

A questo punto, accedere al file di installazione nel browser all’indirizzo yoursite.com/installer.php, dove yoursite.com è il nome di dominio del nuovo sito.

Sarete quindi guidati attraverso una serie di passaggi per caricare e installare i file dal vostro duplicato. Una volta terminato, avrete un duplicato del vostro sito presso il nuovo dominio.

Clonare un Sito in una rete Multisito WordPress con un Plugin

Se il sito che si desidera clonare fa parte di una rete WordPress Multisite, non sarà possibile clonarlo utilizzando il cruscotto MyKinsta, ma sarà necessario utilizzare un plugin.

I due plugin qui sotto sono progettati per semplificare il processo di clonazione di un sito.

NS Cloner – Site Copier

Con il plugin NS Cloner – Site Copier, è possibile creare rapidamente una copia esatta di un sito con un solo clic oppure personalizzare il modo in cui il sito viene duplicato in modo molto più dettagliato acquistando un componente aggiuntivo premium.

Nella sezione di amministrazione della rete, installare il plugin e attivarlo.

Ora avete due modi per clonare i siti:

  1. Si può andare alla schermata Siti e fare clic su Clona sotto il nome del sito che si desidera clonare.
  2. Oppure è possibile utilizzare la voce NS Cloner V3 nel menu di amministrazione della rete.

Facendo clic su Clona nella schermata Siti, il sito viene clonato in un clic esattamente come è senza alcuna personalizzazione. Pertanto, se volete un duplicato esatto del sito, questo è un modo molto rapido per farlo. Se invece preferite apportare delle personalizzazioni al nuovo sito, fate clic sulla voce di menu NS Cloner V3.

Plugin NS Clone WordPress
Plugin NS Clone WordPress

Qui è possibile specificare esattamente cosa viene copiato sul nuovo sito:

  • Select source: selezionare il sito da clonare dall’elenco a discesa.
  • Create New Site: dare al nuovo sito un titolo e un URL.
  • Clone Tables/Copy Users/Copy Media Files: specificare quali tabelle, file e utenti da clonare acquistando un componente aggiuntivo premium.
  • Search and Replace: di nuovo con un componente aggiuntivo, è possibile cercare nel database e sostituire i contenuti, come il nome di dominio del sito.
  • Additional settings: spuntare questa casella per creare un registro del clone da controllare nel caso in cui non funzioni come dovrebbe.

Una volta soddisfatti delle impostazioni, fare clic sul pulsante Clone nell’area verde nella parte inferiore dello schermo e il plugin creerà il clone per voi.