fb-pixel

Come integrare WordPress e GitHub 

Pubblicato in:

by:

Come saprai, GitHub è una piattaforma basata su Git che ospita soprattutto progetti basati su codice. Permette di tenere traccia delle modifiche, di passare da una versione all’altra del progetto e di gestire in modo efficiente la collaborazione in remoto.

In questa guida scopriremo come integrare WordPress e GitHub per registrare le versioni del codice e lavorare in team ai siti costruiti con il popolare CMS. Vedremo diversi metodi per collegare le due piattaforme e i passaggi per implementarli. Ma prima di tutto cerchiamo di capire quando conviene farlo e quando no.

Vantaggi di usare GitHub per un sito WordPress

Forse avrai notato che WordPress esegue un controllo di versione sui contenuti: infatti dalle impostazioni di un articolo o di una pagina puoi risalire a un certo numero di revisioni registrate.

Wordpress Github Vantaggi Versioni

Se vuoi tenere traccia dello sviluppo del codice e di ogni modifica a temi e plugin però, le funzionalità native del CMS non bastano. Ecco perché può essere utile gestire il lavoro su WordPress attraverso GitHub. 

Grazie alla piattaforma, se tutti i collaboratori usano bene le descrizioni dei commit, sarà sempre chiaro chi ha modificato cosa sul sito, quando e perché. Così diventa più fluido non solo lavorare sul codice di WordPress in team, ma anche ritornare a distanza di tempo su progetti individuali.

Un altro suo grande vantaggio è la possibilità di tornare in fretta a una versione stabile di un plugin o del tema se un aggiornamento “rompe” il sito. Qualcosa di simile a quanto offerto dai plugin di backup per WordPress quindi, con la differenza che GitHub permette di ripristinare solo il codice senza influire sui contenuti. 

Il repository di GitHub per il sito può infatti fungere da copia di sicurezza per il codice, ospitata su una piattaforma esterna e affidabile.

La costruzione del sito diventa un processo più pulito perché si può lavorare in locale su un ramo secondario del progetto e applicare le modifiche al sito online solo dopo averle testate. In questo modo si possono sperimentare nuove funzioni senza correre rischi anche quando il sito è già visibile al pubblico.

In particolare quando si collabora allo sviluppo di un sito WordPress, integrare GitHub permette di lavorare in contemporanea sugli stessi file evitando di sovrascrivere le rispettive modifiche; e anche di gestire l’avanzamento del progetto in modo ordinato attraverso pull request e review

Per gli utenti più esperti, la piattaforma offre utili strumenti avanzati come le automazioni di GitHub Actions, per test, backup e deploy, cioè la pubblicazione sul sito del codice aggiornato.

Quando ha senso integrare WordPress e GitHub?

Usare GitHub per lavorare su un sito WordPress ha senso solo se si modifica il codice, e soprattutto se si lavora in team. Con più sviluppatori sullo stesso progetto infatti, GitHub è quasi indispensabile. 

Ma anche se hai intenzione di costruire un sito per conto tuo, vale la pena di usare GitHub se il progetto è complesso e implica la personalizzazione di temi o plugin. A maggior ragione se prevedi che si protragga per un lungo periodo o di doverci rimettere mano in futuro.

Puoi vederlo anche come un ambiente sicuro per testare, in alternativa allo staging del sito.

Invece non vale la pena di usare GitHub con WordPress se:

  • devi realizzare un sito semplice che non richiede aggiornamenti frequenti del codice;
  • usi solo temi e plugin già pronti;
  • oppure non hai familiarità con Git.

Come usare GitHub con WordPress

Prima di collegare GitHub a WordPress è consigliabile installare WordPress in locale – per esempio con Local –, lavorarci e trasferire WordPress da locale a remoto solo quando tutto sarà pronto per andare online. Così non solo potrai iniziare lo sviluppo ancora prima di avere un hosting WordPress, ma anche visualizzare le modifiche quasi immediatamente: basta salvare e ricaricare la pagina.

Local Flywheel Download Homepage

Se decidi di installare WordPress su un server remoto invece, per collegarlo a GitHub dovrai comunque scaricare una copia dei file sul tuo pc e, ogni volta che apporti delle modifiche, ricaricare il file aggiornato sul tuo spazio web per vederle applicate. Un’operazione che richiede tempo, sia che si svolga tramite FTP che attraverso il file manager.

Creare un sito con Local

Puoi creare un sito in locale grazie a software come Local oppure XAMPP o MAMP. Local di Flywheel è la soluzione più rapida perché permette di creare un nuovo sito WordPress in soli 3 clic. XAMPP e MAMP richiedono più passaggi, però restano utili per sviluppare altri tipi di CMS.

Dopo aver installato Local, puoi usare il pulsante apposito per avviare la creazione del sito

Local Flywheel Creare Nuovo Sito

Se vuoi costruirne uno da zero, scegli Create a new site.

Local Flywheel Creare Sito

Se invece vuoi ricreare in locale un sito già esistente in remoto, vai al prossimo paragrafo.

Importare un sito esistente su Local

Se hai già un sito online ma vuoi modificarlo localmente, il modo più veloce per farlo è scaricare sul pc i file del sito e il database e importarli in Local. 

In vista di future modifiche al tema, ti consiglio di creare il tema child WordPress da personalizzare prima di andare avanti. Così ti troverai anche in locale la cartella del tema child, cioè quella su cui è consigliato intervenire per evitare di perdere le modifiche con gli aggiornamenti del tema principale.

Puoi copiare i file di WordPress e scaricarli come .zip da cPanel o altro pannello di controllo dell’hosting. 

Nel tuo gestore dei file apri la cartella che contiene il sito – di solito public_html – e cerca wp-content, l’unica cartella che devi fornire a Local. Dopo averla selezionata, fai clic col tasto destro e scegli Compress

Wp Content Comprimere Copia Esportazione

Troverai tra i file la copia compressa di wp-content da scaricare sul tuo pc. Dopo averlo fatto, cancellala dal gestore dei file.

Per esportare il database, sempre dal pannello accedi a phpMyAdmin e seleziona dalla lista il database corretto.

Poi vai sulla scheda Esporta, seleziona SQL e procedi per scaricare il database sul computer.

Esportazione Database Sql Phpmyadmin

In alternativa puoi creare un backup da importare in Local con un plugin per la migrazione di WordPress.

Per importare il sito su Local fai clic su Create site e poi su Select an existing ZIP per caricare la cartella compressa del tuo sito.

Local Flywheel Caricare Zip Sito Esistente

Dai un nome al sito in locale e continua.

Local Flywheel Importare Sito Zip

Mantieni le impostazioni di default e importa il sito.

Configurare GitHub e Git

Abbiamo già visto nella guida a GitHub che funziona solo insieme a Git. Quindi prima di collegarlo a WordPress configureremo non solo GitHub ma anche Git, il sistema che gestisce sia il controllo versione che i flussi di lavoro sulla piattaforma.

Puoi scaricare Git gratis dal sito ufficiale e installarlo sul pc seguendo la procedura guidata. Conferma semplicemente le impostazioni predefinite, a meno di non avere esigenze particolari e sapere bene cosa stai facendo.

Installare Git

Per configurare GitHub invece, accedi al tuo profilo su GitHub o creane uno adesso.

Creare Account Github

Come forse già sai, Git funziona tramite riga di comando. Se vuoi evitare di usarla, puoi installare GitHub Desktop

Creare un repository su GitHub

In pratica collegare WordPress a GitHub significa collegare alla piattaforma le cartelle del sito che contengono il tema o i plugin e si trovano di solito dentro wp-content. Vediamo come farlo in pochi passaggi.

Sulla dashboard di GitHub crea un nuovo repository cliccando sul pulsante ‘+’ e selezionando New repository

Github Add New Repository

Dopo aver scelto il nome e se renderlo privato, puoi confermare la creazione.

Github Create New Repository

Copia l’indirizzo web del repository, che si trova nella sezione Quick setup.

Github Indirizzo Repository

Collegare un tema WordPress a GitHub

Una volta che hai creato il tuo sito o una sua copia in locale, puoi collegare il tema WordPress a GitHub facilmente.

Sul tuo computer, individua la cartella del tema che vuoi collegare. 

Se stai usando Local, la cartella del tuo sito si trova in app > public > wp-content > themes. La puoi raggiungere anche dalla schermata Local sites del programma facendo clic su Site folder.

Local Flywheel Cartella Sito

Entra nella cartella del tema per cui vuoi avviare il controllo di versione, poi col tasto destro del mouse apri il menù e scegli Apri nel terminale

Cartella Sito Locale Apri Git Bash

Su Windows questo potrebbe aprire PowerShell, un’interfaccia che funziona comunque grazie a Git. Se preferisci avviare Git Bash, lo trovi espandendo la voce Mostra altre opzioni

Cartella Sito Locale Apri Terminale

Ora bisogna inizializzare Git, cioè dire al programma di tenere traccia di tutti i cambiamenti dei file in quella cartella da ora in avanti, con il comando:

git init

Vedrai qualcosa del genere:

Git Bash Inizializzazione

Ora puoi collegare il tuo progetto locale al repository su GitHub eseguendo sul terminale:

git remote add origin URL-del-repository

Dopo aver sostituito “URL-del-repository” con l’indirizzo copiato da GitHub.

Aggiungi tutti i file del tema con il comando:

git add . 

Ora potresti visualizzare dei messaggi di avvertimento tipo:

“warning: in the working copy of ‘toolset-config.json’, LF will be replaced by CRLF the next time Git touches it”. 

Non devono preoccuparti perché riguardano i caratteri usati per chiudere le righe (diversi per convenzione in Linux, macOS e Windows): una questione formale che non influisce sul funzionamento del file.

Git Bash Avvisi

A questo punto puoi registrare la prima versione della cartella – fare una sorta di istantanea dello stato del progetto – con il primo commit:

git commit -m "Prima versione del tema"

Dove puoi sostituire “Prima versione del tema” con l’espressione che preferisci.

Infine invia tutto a GitHub eseguendo:

git push -u origin main

Il main – a volte chiamato ancora master – è il ramo principale del progetto, quello che contiene la sua versione approvata. 

Se è la prima volta che usi GitHub in locale, vedrai il messaggio “Please tell me who you are”.

Git Bash Identita Sconosciuta

Per confermare la tua identità dovrai usare 2 comandi. Il primo è:

git config --global user.email "email che usi in GitHub"

Il secondo:

git config --global user.name "il tuo nome su GitHub"

Come sempre, dopo aver sostituito i tuoi dati alle espressioni tra virgolette.

Tenere traccia delle modifiche al tema WordPress con GitHub

Se vuoi usare GitHub per tenere traccia delle modifiche locali al tema WordPress, ogni volta che termini una sessione di lavoro devi eseguire una sequenza di 3 comandi.

Il primo serve ad aggiungere i file modificati all’area di staging, lo spazio in cui Git raccoglie i file da includere nella prossima versione da salvare:

git add .

Con il secondo comando si crea un commit includendo un messaggio che permetta di capire anche a distanza di tempo che modifiche sono state fatte:

git commit -m "Descrizione delle modifiche"

Il terzo comando invia le modifiche al repository remoto su GitHub:

git push origin main

Allo stesso modo puoi inviare le modifiche a un ramo secondario del progetto, sostituendo “main” con il nome del branch (ramo) di destinazione.

Dopo il push (invio) ti verrà chiesto di accedere a GitHub.

Collegare un plugin WordPress a GitHub

Puoi collegare il plugin a GitHub con la stessa procedura che abbiamo seguito per il tema.

In questo caso vai sulla cartella locale del plugin che si trova in app > public > wp-content > plugins, accessibile anche dalla schermata Local sites del programma con un clic su Site folder.

Una volta dentro la cartella del plugin per cui vuoi avviare il controllo di versione, usa il tasto destro del mouse e nel menù seleziona il metodo che preferisci per accedere alla riga di comando. 

Cartella Sito Locale Plugin Apri Terminale

Ora puoi inizializzare la cartella in Git come abbiamo visto in Collegare un tema WordPress a GitHub, con i comandi:

git init

git remote add origin URL-del-repository

git add . 

git commit -m "Prima versione del plugin"

git push -u origin main

Tenere traccia delle modifiche al plugin WordPress con GitHub

Anche per registrare su GitHub le modifiche ai plugin WordPress hai a disposizione la stessa sequenza di comandi usata per il tema:


git add .

git commit -m "Descrizione delle modifiche"

git push origin main

GitHub Desktop

Se preferisci non usare la riga di comando, puoi installare sul tuo computer GitHub Desktop, un programma che ti permette di usare Git attraverso un’interfaccia più amichevole

Puoi scaricarlo gratis dalla pagina dedicata sul sito di GitHub.

Anche GitHub Desktop ha bisogno di Git per funzionare, e dovrai comunque installarlo sul pc.

Github Desktop Download

Plugin WordPress per GitHub 

Se stai pensando a un plugin per integrare GitHub e WordPress, ti sarà utile sapere che i componenti aggiuntivi di questo tipo si dividono in 3 categorie, a seconda della funzione principale: 

  • gestire da Git gli aggiornamenti del codice di WordPress;
  • oppure installare e gestire temi e plugin importati da GitHub;
  • incorporare contenuti da GitHub nelle pagine del CMS.

Nessun plugin WordPress per GitHub può sostituire Git, che dovrà comunque essere installato sul tuo pc. Inoltre questi strumenti non sostituiscono neanche GitHub, piuttosto aggiungono funzioni che possono facilitare l’integrazione con WordPress.

Per esempio WP Pusher è un plugin a pagamento pensato per chi sviluppa in Git e vuole un sistema automatico di aggiornamento del codice basato sui push in GitHub. Grazie a questo strumento potresti installare e aggiornare temi e plugin personalizzati da GitHub (e altri host Git) senza passare da FTP o dal gestore dei file.

Wp Pusher Plugin WordPress Github

Invece Git Updater (ex GitHub Updater) mostra sul pannello di amministrazione di WordPress gli aggiornamenti disponibili per temi e plugin ospitati su GitHub e altre piattaforme basate su Git, e permette di aggiornarli con un clic come faresti con quelli che scarichi dalla directory apposita di WordPress.

Git Updater Plugin WordPress Github

In modo simile, Deployer for Git permette di installare e aggiornare plugin e temi collegando un repository GitHub a WordPress.

Deployer For Git Plugin WordPress Github

GitHub Embed è un plugin WordPress gratuito per incorporare nei contenuti repository, file o altre informazioni presenti su GitHub in pochi clic. Molto usato dagli autori di temi, plugin e altri software a pagamento per proporli agli utenti sul proprio sito.

Conclusioni

In questa guida abbiamo visto quali vantaggi offra integrare WordPress e GitHub, e come farlo passo passo.

Prima dobbiamo installare Git e accedere al nostro profilo su GitHub. Dopodiché, se configuriamo il sito in locale, possiamo facilmente collegare le cartelle di temi e plugin a un repository su GitHub con una serie di comandi Git da terminale. 

O in alternativa possiamo accedere a un’interfaccia più comoda installando GitHub Desktop.

Con i plugin WordPress per GitHub riusciamo ad aggiungere alcune funzionalità per automatizzare operazioni come l’inserimento sul sito di informazioni contenute nei repository oppure la messa in produzione delle modifiche al codice.

E tu hai già usato GitHub per gestire lo sviluppo del tuo sito WordPress? Com’è andata? Se ti va, raccontacelo nei commenti.


Prova gratis e senza impegno uno dei nostri piani hosting per 14 giorni. Non è richiesto nessun dato di pagamento!

Commenti

Lascia un commento

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