Staging WP: Creare un’area di staging di WordPress con WP-CLI

Staging WP: Cosa è e perché è importante

Lo staging, in ambito web, si riferisce a un ambiente di test che replica fedelmente il sito web di produzione. Questo ambiente separato permette agli sviluppatori e ai gestori di siti web di testare nuove funzionalità, aggiornamenti e modifiche senza rischiare di compromettere il sito live. L’importanza dello staging non può essere sottovalutata: offre un “sandbox” sicuro dove sperimentare, debuggare e ottimizzare prima di applicare qualsiasi cambiamento al sito in produzione. Questa guida sullo staging è utilizzabile sui piani Hosting WordPress. E’ possibile eseguire la copia di staging anche tramite softaculous tramite questa guida.

Per i siti WordPress, creare un’area di staging è fondamentale per:

1. Testare nuovi temi e plugin
2. Sperimentare con modifiche al codice
3. Verificare la compatibilità degli aggiornamenti
4. Formare nuovi membri del team
5. Ottimizzare le prestazioni senza impattare gli utenti

WP-CLI: Lo Strumento Essenziale per gli Sviluppatori WordPress

WP-CLI  è uno strumento che permette di gestire un sito WordPress direttamente da riga di comando. Offre un’alternativa rapida ed efficiente all’interfaccia grafica di WordPress (il wp-admin), consentendo agli sviluppatori – e non – di eseguire diverse operazioni, partendo dalla gestione dei plugin e dei temi all’importazione ed esportazione di contenuti e tanto altro.

I vantaggi di WP-CLI sono:

– Automazione di compiti ripetitivi
– Maggiore velocità nell’esecuzione di operazioni bulk
– Facilità di integrazione con script e processi di deploy
– Accesso a funzionalità avanzate non disponibili nell’interfaccia web

WP-CLI risulta essere uno strumento valido per chi deve lavorare su grandi mole di sito in quanto permette di snellire il lavoro.

Prerequisiti per la Creazione di un’Area di Staging

Prima di iniziare il processo di creazione dell’area di staging, è essenziale assicurarsi di avere tutto il necessario. Ecco i prerequisiti fondamentali:

1. WP-CLI installato sul server: Assicurarsi di avere WP-CLI correttamente installato e configurato sul server. Questo può essere verificato eseguendo `wp –info` da terminale. Sui piani Hosting WordPress è già preinstallato.

2. Accesso SSH al server: L’accesso SSH è cruciale per eseguire comandi WP-CLI direttamente sul server. Bisogna assicurarsi di avere le credenziali corrette e i permessi necessari.

3. Un’installazione WordPress esistente: Dovrà essere presente un sito WordPress funzionante da cui partire per creare l’ambiente di staging.

4. Spazio su disco sufficiente: Verificare di avere abbastanza spazio sul server per duplicare il tuo sito WordPress, inclusi file e database.

5. Backup recente: Prima di iniziare, eseguire sempre un backup completo del tuo sito di produzione. Questa è una pratica di sicurezza essenziale.

Creazione dell’Area di Staging con WP-CLI

Una volta verificato di rispettare tutti i prerequisiti e dopo aver fatto il backup, si può procedere con la creazione dell’area di staging.

E’ bene creare un terzo livello per l’area di staging.

Per accedere al terminale su cPanel>Avanzate>Terminal o cercare, in alto a destra, “terminal”. Come da screenshot

Staging WP: Creare un'area di staging con WP-CLI per WordPress

1. Esportare il database di produzione

wp db export production_db.sql

Questo comando crea un dump SQL del database di produzione.

2. Creare un nuovo database per l’ambiente di staging

Questa opzione è bloccata per motivi di sicurezza sulla maggior parte dei provider. Seguire la guida sulla creazione del DB su cPanel per creare il database dal pannello.

wp db create staging_db

Assicurasi di avere i permessi necessari per creare nuovi database sul server.

3. Importare il database di produzione nel database di staging

wp db import production_db.sql --dbname=staging_db

Questo popola il nuovo database di staging con i dati del sito di produzione.

4. Aggiornare l’URL del sito nel database di staging

wp search-replace 'https://www.sitoweb.com' 'https://staging.sitoweb.com' --all-tables

Questo passo è cruciale per evitare conflitti tra l’ambiente di staging e quello di produzione.

5. Copia i file di WordPress

cp -R /home/nomeutente/public_html /home/nomeutente/terzolivellocreato

Questo comando duplica tutti i file del sito WordPress nell’area di staging.

6. Aggiornare il file wp-config.php nell’ambiente di staging

Modifica manualmente il file wp-config.php nella directory di staging:

define('DB_NAME', 'staging_db');
define('DB_USER', 'staging_user');
define('DB_PASSWORD', 'staging_password');

Assicurarsi di utilizzare le credenziali corrette per il nuovo database di staging.

7. Disabilitare l’indicizzazione dei motori di ricerca

wp option update blog_public 0

Questo impedisce ai motori di ricerca di indicizzare il sito di staging, evitando potenziali problemi di contenuti duplicati.

8. Aggiungi protezione con password (opzionale ma consigliato)

Per trovare il percorso in cui si trova l’area di staging scrivere sul terminale

pwd

e verrà fornito il path in cui ci si trova.

Crea un file .htaccess nella root del sito di staging:

AuthType Basic
AuthName "Staging Area"
AuthUserFile /percorso/al/.htpasswd
Require valid-user

Poi creare un file .htpasswd con un utente e una password. Per generarne il contenuto si può usare questo sito. Copiarne il contenuto e incollarlo in un file chiamato .htpasswd

Questa procedura aggiunge un ulteriore livello di sicurezza all’ambiente di staging.

9. Verificare il funzionamento del sito di staging

Accedere al nuovo sito di staging tramite browser e verificare che tutto funzioni correttamente. Controllare in particolare:
– Corretta visualizzazione di temi e layout
– Funzionamento dei plugin
– Corretto caricamento di immagini e media
– Funzionalità di login e aree amministrative