Essere uno Sviluppatore WordPress

Non puoi dire di Essere uno Sviluppatore WordPress se…

Questo sarà un articolo un po' cattivo non tanto nel senso che passerò il tempo ad offenderti e a farti capire come mai non sei uno sviluppatore WordPress ma piuttosto voglio farti riflettere se sei in grado o meno di poterti definire tale.

È diverso tempo che ho intenzione di scrivere un articolo del genere e per diversi motivi.

Primo fra tutti è il fatto che all’interno di questo blog puoi trovare molte informazioni su come potenziare il tuo sviluppo WordPress, è presente la guida alla creazione di un tema, quella che ti permette di apprendere il linguaggio PHP con esempi presi dallo stesso core di questa piattaforma e recentemente abbiamo discusso anche diversi strumenti che potrebbero facilitare le tue pratiche di sviluppo.

Quindi il materiale presente in questo e negli altri siti che trattano di programmazione e di sviluppo WordPress dovrebbero fornirti delle conoscenze sufficienti per diventare uno sviluppatore WordPress a tutti gli effetti, ma l’altro motivo per il quale mi sono deciso di scrivere questo articolo è perché recentemente mi sono trovato ad ascoltare una vecchia intervista fatta a Piero Bellomo nella quale abbiamo discusso brevemente questi aspetti.

Senza farti aspettare ulteriormente andiamo a conoscere quali sono i punti che ritengo fondamentali per potersi definire uno sviluppatore WordPress a tutti gli effetti, se poi hai qualcosa da aggiungere o qualche critica ricorda che i commenti sono aperti 😉

Sviluppi Direttamente sul Server

Questa è la cosa più sbagliata che potresti fare!! Capisco che è incredibilmente comodo dato che il cliente vede al volo le modifiche effettuate, non devi saltare da un’installazione ad un’altra portandoti dietro i vari file e database e non richiede neanche di installare un server web sulla tua macchina.

I punti a favore sembrano molti; quindi perché ti sto dicendo che è una pratica sbagliata?

Il primo motivo riguarda il fatto che così facendo stai rallentando incredibilmente il tuo lavoro, lavorare direttamente sul tuo computer è incredibilmente più veloce senza dimenticarsi che se qualcosa va storto non hai fatto alcun danno dato che stai lavorando sulla tua macchina al posto di lavorare sul server del cliente. Ogni volta che vuoi inviare una modifica al server (che in alcuni casi coincide con il salvataggio del file stesso) dovrai spendere dei preziosi secondi per:

  1. contattare il server
  2. far elencare i file presenti al suo interno
  3. trovare il file appena modificato
  4. cancellarlo
  5. caricare quello nuovo

Anche se sono operazioni che fa il computer, se sommi la manciata di secondi alle centinaia di modifiche che puoi fare in una giornata lavorativa, probabilmente realizzi da solo quanto questa pratica sia una perdita di tempo. Oltre a questo c’è da dire che capita di perdere completamente il file se qualcosa va storto nella comunicazione tra la tua macchina ed il server.

Modifichi Temi Premium

Personalmente non sono contrario all’utilizzo dei temi premium perché, in fin dei conti, esistono moltissime persone che vogliono usare questa piattaforma e che hanno bisogno di personalizzazioni abbastanza avanzate o talvolta, l’illusione di queste. Ma queste persone non hanno le tue conoscenze.

I temi premium sono stati creati per coloro che non sanno scrivere codice, ecco il motivo di tutti quei pannelli di impostazioni e gli sforzi di WordPress per creare un ottimo Theme Customizer. Ma tu sei uno sviluppatore WordPress e questa piattaforma non dovrebbe avere alcun segreto o almeno, dovresti sapere dove trovare l’aiuto necessario (affronteremo meglio questo argomento nel prossimo punto).

Quando un cliente mi mostra un tema premium dicendomi che vuole utilizzare quello, generalmente io gli propongo due strade:

  • procediamo con l’acquisto del tema e configurazione del sito ma da parte mia non verrà applicata alcuna modifica alla struttura del tema;
  • oppure sviluppo il tema e le funzionalità da zero nel modo che ritengo più corretto.

Ti stai chiedendo perché sono così selettivo? Ma perché modificare un tema sviluppato da altri è una palla pazzesca!

Ogni volta che mi è successo di lavorare su un tema premium ho dovuto scoprire come lo sviluppatore ha pensato per creare il suo tema, quali siano le logiche che ha applicato e magari anche scoprire quali plugin jQuery ha utilizzato per poterli modificare a seconda delle mie necessità…

E questi sono soltanto alcuni esempi che mi sono venuti in mente al volo, altri potrebbero essere la struttura HTML generata, la logica usata nello sviluppo dei CSS e qualsiasi altra cosa che uno sviluppatore può fare in modo diverso da un altro (praticamente tutto).

Partendo da uno Starter Theme permette invece di mantenere uno standard migliore 😉

Non hai mai Aperto il Codex

Ecco un errore che ritengo quasi imperdonabile, un errore che io stesso ho commesso nei primi tempi, non consultare il Codex!

Soffermati un attimo a pensare.

Stiamo utilizzando una piattaforma sviluppata da migliaia di persone, tradotta in decine di lingue ed utilizzata da milioni di siti web… Dove pensi di poter trovare le documentazioni più fedeli se non all’interno del suo sito web? Se non all’interno del Codex?

Non mi fraintendere, siti come il mio e gli altri che forniscono informazioni riguardanti lo sviluppo in questa piattaforma sono sicuramente una manna dal cielo, ma se hai bisogno di quella particolare funzione, se vuoi fare qualcosa che non è ancora stato fatto; allora stai sicuro che tutta la documentazione di cui hai bisogno è presente nel Codex!

In fin dei conti il Codex è il primo punto all’interno del quale è possibile scoprire le sintassi delle funzioni che vogliamo utilizzare, i valori restituiti e dove possiamo anche trovare qualche esempio 😉

Non sai che Cosa sia un Hook

Se provieni dal mondo PHP e non, molto probabilmente la prima cosa che ti sei chiesto visualizzando i file di una installazione WordPress è stata: ma dove trovo il file per modificare la testata?

Forse il tuo interrogativo era diverso, ma il concetto principale resta; le tue conoscenze non comprendevano la comprensione della logica WordPress! Chiunque abbia sviluppato in PHP sa che per richiamare un file si usano le funzioni include() e require() e le relative versioni *_once(); con WordPress questo non è necessario!

La presenza di funzioni dedicate allo svolgimento delle più svariate operazioni è un argomento che potrai approfondire all’interno del Codex, ma come fare per eseguire le tue funzioni in un determinato momento? Come puoi agganciarti nel momento in cui vengono attivati i plugin ed eseguire delle tue operazioni?

WordPress ha sviluppato il concetto di Hook (gancio) che ci permette di scoprire determinati punti nell’esecuzione della piattaforma e di inserire al loro interno anche il nostro codice per aggiungere pagine opzioni, modificare dei dati o una delle altre decine di cose che potrai personalizzare elencate in questa pagina.

Non Conosci la Struttura Gerarchica dei Temi

Su questo argomento ho speso addirittura una lezione del corso Crea un Tema WordPress da Zero, la lezione è volutamente la decima all’interno del quale ti spiego per filo e per segno che cosa voglia veramente dire comprendere la struttura dei file che compongono un tema.

In questo articolo non ho l’occasione di andare così nel dettaglio, ma quello che posso fare è inserire il video della lezione e spiegarti successivamente perché è fondamentale conoscere e sfruttare al meglio questa caratteristica.

Anche se conosci i Conditional Tags (altra caratteristica che ti permetterà di essere uno sviluppatore WordPress migliore) e li utilizzi quotidianamente nel tuo sviluppo, c’è da dire che molto probabilmente conoscere la gerarchia di un tema ti sarà molto più utile.

Le Conditional Tags sono state create per inserire piccole modifiche all’interno della stessa pagina e che permettono di scoprire se stiamo visualizzando un determinato contenuto. Il fatto è che WordPress effettua già determinati controlli e scoprendo al meglio la sua gerarchia potrai sfruttarli senza dover andare a caricare ulteriormente il tuo server.

Pensi che gli Starter Theme siano Difficili/Inutili

Abbiamo recentemente affrontato l’argomento Starter Theme dove ti ho presentato i due che ritengo più validi: _s (ultimamente il mio favorito) e Bones.

Vedendo quello che sono in grado di fare i temi premium, molto probabilmente ti sei trovato spesso a pensare che avresti potuto comprarne uno e personalizzarlo facilmente ma, dati i problemi discussi precedentemente, molto probabilmente non stai facendo altro che rallentare il tuo lavoro.

Uno starter theme, e lo dice anche il nome, è un ottimo punto di partenza per portare avanti lo sviluppo del tuo nuovo tema, avrai una struttura già pronta a tutte le principali funzionalità WordPress (sopratutto con _s), potrai partire sempre dalla stessa base di codice che conoscerai sempre meglio, potrai semplicemente creare le tue strutture personalizzate e riutilizzarle a piacere ed in fin dei conti è anche un’ottima forma di apprendimento per conoscere meglio questa piattaforma 😀

Ti confesso che sto anche preparando la nuova versione di Crea un Tema WordPress da Zero che si baserà sulla struttura di _s e verrà estesa/personalizzata dal sottoscritto e dalle future modifiche che vorrai applicare attraverso il repo GitHub quindi se la cosa ti interessa, non esitare a lasciare un commento per farmi dare una smossa 😀

Dimenticavo, il nuovo corso sarà presente all’interno del nuovo progetto skillsAndMore.

Non sai che puoi Usare WordPress come MVP

All’interno del mondo delle startup il termine MVP è molto comune. Il significato di questo acronimo è Minimum Viable Project ovvero un progetto che sia di veloce implementazione e che inizialmente contenga soltanto le funzionalità base dell’idea.

Nell’intervista a Piero Bellomo è venuto fuori che anche lui utilizza WordPress se tutto quello che deve fare è un MVP, ci racconta anche quanto sia stato semplice personalizzare uno starter theme per creare un progetto di guide turistiche presentate in forma innovativa. Sicuramente, il committente avrà a pensato a 10000 funzionalità che il sito doveva avere per raggiungere il successo dovuto.

Il fatto è che, come Piero sa molto bene, molto spesso basta la sola caratteristica per testare il potenziale di un’idea.

Per questo è utile partire da WordPress per la realizzazione di un progetto del genere! WordPress è una piattaforma molto malleabile che, anche grazie ai plugin, permette di personalizzare molto dettagliatamente questa piattaforma e se ci sviluppi tutti i giorni; perché mai dovresti iniziare da zero?!?

In fin dei conti, man mano che il progetto prenderà forma e sopratutto avrai testato la sua validità, potresti anche scoprire che WordPress non è la piattaforma adatta e desideri realizzare il progetto da zero; ma almeno avrai scoperto che l’idea funziona!

Dietro al semplice concetto di MVP si cela un’incredibile quantità di informazioni che ti permetteranno di capire meglio i motivi per i quali generalmente viene presa questa via. In questa porzione dell’articolo non ho potuto approfondire troppo questo argomento ma ti consiglio di iniziare guardando l’intervista e magari chiedendo approfondimenti 😉

Pensi: “Io non ho Bisogno di una Community/Forum”

Fino a qualche anno fa, uno sviluppatore era visto come una persona che non aveva grandi doti sociali e che preferiva di gran lunga la compagnia dello schermo a quella degli amici. Nonostante il fatto che in determinati contesti questo è sempre vero e che non ci vedo niente di male, al giorno d’oggi ci vengono forniti degli strumenti davvero allettanti per non sviluppare più da soli.

Se fino a qualche anno fa l’unico modo per comunicare con persone che condividono gli stessi interessi si usava la mailling list, ad oggi possiamo utilizzare qualsiasi social network o forum di settore per trovare risposta ai nostri dubbi.

Da quando ho iniziato a moderare la community WordPress Italy+ non sono migliorate soltanto le mie conoscenze di sviluppo ma ho trovato moltissimi professionisti ai quali mi posso rivolgere per consigli o chiarimenti; questa è una cosa che è difficile da trovare in un libro.

Allo stesso modo, non vorrei sorvolare sull’importanza dei libri (che approfondiremo a breve) e di una buona formazione; queste sono le basi per chi vuol essere uno sviluppatore. Ma avere una community di professionisti ci aiuterà a farci sentire meno soli e le relazioni che potrai stringere al suo interno potranno anche portarti nuovi contatti lavorativi!

Non hai Mai letto un Libro sullo Sviluppo in WordPress

Come dicevo poco fa, leggere i libri è incredibilmente importante. La sua lettura fornisce le basi, le fondamenta, che ti permetteranno di muovere i primi passi e di approfondire le conoscenze che già possiedi. Avere una community aiuta a scoprire come fare quello che non dice il libro, ma leggere un libro è incredibilmente importante!

libri-wp

Personalmente sono riuscito ad approfondire in modo incredibile le mie conoscenze grazie al libro Professional WordPress Plugin Development, è in Inglese ma se sei in grado di leggere questa lingua non hai idea della quantità di informazioni che potrai trovare al suo interno!

Se invece preferisci leggere e studiare qualcosa in italiano, iscriviti alla newsletter perché a breve pubblicherò un corso dedicato a questo argomento su skillsAndMore 😉

Altro libro veramente interessante e che mi ha fatto scoprire l’amico Daniele Scasciafratte è Building Web Apps with WordPress che ci guida passo passo allo sviluppo di applicazioni web permettendoci di approfondire sia le proprie conoscenze che di scoprire come questa piattaforma possa essere utilizzata per creare delle applicazioni di tutto rispetto!

Non Segui gli Aggiornamenti della Piattaforma

WordPress è un CMS in continua evoluzione, nato inizialmente come semplice piattaforma di blogging ad oggi è considerato un CMS di tutto rispetto in grado di creare qualsiasi tipologia di sito web (e di MVP) e per questo motivo è di fondamentale importanza seguire i suoi aggiornamenti.

Non parlo tanto delle novità introdotte dall’ultima versione (cosa che come vedi su questo sito evito di fare) ma piuttosto per quegli aggiornamenti che sono interessanti per lo sviluppatore, le nuove funzioni, i nuovi metodi per interrogare il database o personalizzare un ciclo…

Gli sviluppatori WordPress cercano di migliorare ed adattare questa piattaforma alle ultime richieste ed ottimizzazioni di codice e documentano tutto all’interno del Codex (altro motivo per cui è importante la sua consultazione) dove troverai anche le funzioni deprecate e dei suggerimenti su quale nuova funzione potrai utilizzare al suo posto.

Esempio di Messaggio Funzione Deprecata

Un Messaggio di Funzione Deprecata

Restare aggiornato è uno dei motivi principali che ti permetteranno di sviluppare al meglio seguendo la WordPress Way utilizzando gli strumenti che ti vengono messi a disposizione e, spesso, sfruttando del codice che sarà più ottimizzato di quello che saresti in grado di scrivere da 0.

Non Conosci le Differenze tra il Paradigma Procedurale e ad Oggetti

Con quest’ultimo punto non intendo tanto conoscere nel dettaglio le differenze tra questi due paradigmi, piuttosto mi riferisco al fatto di come questi vengono usati in WordPress!

Man mano che la piattaforma si aggiorna e vengono aggiunte nuove funzionalità gli sviluppatori hanno iniziato ad integrare sempre più nel dettaglio la struttura ad oggetti. Una prima cosa bella è che se stai sviluppando utilizzando le funzioni messe a disposizione dalla piattaforma non avrai bisogno di una approfondita conoscenza del paradigma ad oggetti perché come puoi scoprire anche da solo, la sintassi da usare è molto semplice e diretta.

Ma conoscere la logica che risiede dietro la programmazione ad oggetti ti permetterà anche di scrivere dei plugin molto più ordinati e dei temi che potrai realizzare in un baleno!

Conclusioni

Ovviamente questi sono soltanto alcuni dei punti che mi sono venuti in mente e che identificano il non sviluppatore WordPress, se ne hai in mente degli altri che vuoi aggiungere alla lista aggiungi immediatamente la tua idea all’interno dei commenti, altrimenti usalo per dirmi che cosa pensi di questo articolo, ti confesso che sono proprio curioso!

In fin dei conti il testo in esso contenuto è un po’ provocatorio ma sopratutto l’ho scritto per aiutarti a farti un piccolo esame di coscienza… Sei sicuro di poterti chiamare uno sviluppatore WordPress?

Lascia il tuo Pensiero