✅ Notizie, temi, plugin WEB e WordPress. Qui condividiamo suggerimenti e le migliori soluzioni per siti web.

Strumenti per scrivere un codice WordPress migliore: Composer

5

Anche se penso che il titolo di questa serie e gli articoli per ciascuno siano abbastanza chiari, ci sono altre cose che sto cercando di fare con questa serie in contrasto con le altre serie che ho scritto fino a questo punto.

In particolare, due delle cose che sto cercando di fare sono due:

  1. mantenere ogni articolo relativamente succinto (rispetto a come sono stati gli articoli precedenti),
  2. concentrati su una cosa alla volta e mantieni la descrizione breve.

Poiché questo è il contenuto dell’abbonamento, non mi dispiace che sia un po’ più lungo del solito, ma non voglio nemmeno che sia così lungo da essere difficile da seguire. Preferirei che fosse una breve lettura con qualcosa di pratico che puoi implementare dopo aver letto ogni post.

E una delle cose che aiuta molto a scrivere un codice WordPress migliore è Composer.

Codice WordPress migliore con Composer

Se leggi questo blog da molto tempo, allora sai che sono un fan di Composer (tuttavia sono tutt’altro che l’unica persona che lavora in WordPress che lo sia).

E anche se ho scritto del materiale su di esso, non ho scritto qualcosa con l’obiettivo specifico di metterti in funzione entro la fine della lettura di un singolo, breve articolo.

A quel punto, dovremo scendere a compromessi: in particolare, fornirò un file di configurazione di esempio insieme a un modo per organizzare la directory del tuo plug-in. Poi, nel prossimo post, spiegherò alcune delle caratteristiche di Composer.

Cos’è il compositore?

Innanzitutto, è importante capire cos’è il compositore. Ed è facile recitare la definizione come si legge sul sito, no? È un gestore delle dipendenze per PHP.

Ma prima, cos’è una dipendenza?

Per alcuni, però, solleva alcune domande:

  • Cos’è una dipendenza?
  • Perché devo gestirli?

E se scavi un po’ più a fondo, potresti scoprire che è un gestore di pacchetti, e questo solleva semplicemente le stesse domande tranne per il fatto che sostituisci semplicemente "dipendenza" con "pacchetto" e sei tornato da dove hai iniziato.

Quindi farò il possibile per renderlo il più chiaro possibile:

Una dipendenza, o un pacchetto, un pezzo di software utilizzato dal tuo codice. Può essere qualcosa su cui si basa per la funzionalità durante il runtime, ad esempio un modo per effettuare richieste HTTP, oppure può essere una libreria per la conversione di array in XML.

Composer semplifica l’inclusione di questi particolari pacchetti nella tua libreria consentendoti di:

  • scarica e includi il pacchetto nel tuo plugin,
  • carica automaticamente il tuo plugin durante il runtime,
  • semplifica la creazione di un’istanza o la chiamata al plug-in secondo necessità.

Ciò significa che non dobbiamo riempire le directory della nostra base di codice con molti file aggiunti manualmente e significa che non abbiamo l’ inclusione o  la richiesta dappertutto.

Questi avranno il loro posto, di cui parlerò nel prossimo post, ma non avranno bisogno di essere installati automaticamente. Invece, il compositore li gestirà. Quindi, il gestore delle dipendenze fa parte del suo scopo.

Ora che l’hai installato, hai un po’ di contesto.

Usando il compositore

Scrivere questa particolare sezione è alquanto difficile perché tutti abbiamo esigenze diverse, giusto? Ma per lo meno, possiamo tutti trarre vantaggio da un caricatore automatico.

È qualcosa che tutti possiamo usare.

Quindi ecco cosa farò:

  1. Imposterò una directory di plug-in di base,
  2. Crea i file necessari per guidare il plugin,
  3. Imposta un semplice file Composer,
  4. Eseguilo

E poi ti farò vedere i risultati. Possiamo entrare in librerie di terze parti o altre funzionalità in un post futuro (o serie future, davvero).

Ma se non altro, questo ti mostrerà come utilizzare Composer per definire un caricatore automatico in modo da poterti concentrare sulla scrittura del codice e non sul chiederti se le classi sono incluse.

La directory dei plugin

Generalmente strutturo i miei plugin in questo modo:

  • c’è un file bootstrap letto da WordPress,
  • c’è una  directory src in cui sono conservate tutte le directory e i file PHP,
  • c’è una  directory di risorse di primo livello in cui sono conservati immagini, file JavaScript e file Sass,
  • e c’è una cartella del fornitore creata da Composer per ospitare le dipendenze e il caricatore automatico.

Occasionalmente potrebbero esserci altre cartelle strane come una cartella inc o lib, ma a questo punto è molto irregolare nel tipo di lavoro che svolgo. E per questo motivo, non me ne preoccuperò per questo post.

Invece, la mia directory è simile a questa.

La  directory del fornitore è mancante perché non ho ancora creato un file Composer utilizzato per l’esecuzione. Ma lo vedremo prima della fine del post.

File di esempio

Prendiamo un file di esempio impostato nel plugin. E quando dico campione, intendo anche semplice.

Questo file avrà un unico scopo: stampare un messaggio sulla dashboard quando accedi a WordPress.

Strumenti per scrivere un codice WordPress migliore: Composer

Ricorda, tuttavia, lo scopo di questo non è mostrare come scrivere un plug-in ben strutturato. Invece, è per mostrare come generare un caricatore automatico in modo che i file del plugin vengano generati automaticamente.

Quindi il bootstrap del plugin si presenta così :

E il file specificamente responsabile della visualizzazione del messaggio è simile al seguente :

E se sei curioso del file HTML, è anche semplice :

Te l’avevo detto che era semplice.

Il file di configurazione del compositore

Questo particolare file può essere semplice o complicato a seconda delle esigenze. Per questo post, lo stiamo semplificando. L’obiettivo, per questo post, è semplicemente dargli un nome, una descrizione, la licenza, gli autori e quindi come impostare il caricatore automatico.

Dai un’occhiata qui e poi ti spiego cosa vedi appena sotto:

{ "name": "tommcfarlin/sample-plugin", "description": "A sample plugin used for a blog post.", "type": "wordpress-plugin", "license": "GPL-3.0-or-later", "authors": [ { "name": "Tom McFarlin", "email": "tom@tommcfarlin.com", "homepage": "https://tommcfarlin.com" } ], "autoload": { "psr-4": { "SamplePlugin": "src/" } } }

Innanzitutto, il nome, la descrizione, il tipo e la licenza dovrebbero essere abbastanza facili da seguire. Anche l’area dell’autore è semplice.

Il caricamento automatico è l’area di cui ci preoccupiamo in questo momento. Dovrebbe essere abbastanza chiaro.

In breve, abbiamo una direttiva per PSR4 di  cui puoi leggere di più e quindi dove si trova uno spazio dei nomi. Quindi nell’esempio sopra, qualsiasi cosa nello spazio dei nomi SamplePlugin si trova in src. 

Questo è ciò che dice al caricatore automatico dove cercare determinati file. E nel nostro caso, cercherà solo la  classe Messenger.

Compositore in corsa

Ora che abbiamo trattato le basi del file di configurazione di Composer, è ora di eseguirlo. Ricorda che la tua directory dei plugin dovrebbe assomigliare a questa:

Strumenti per scrivere un codice WordPress migliore: Composer

Nel tuo terminale, inserisci il seguente comando :

E dovresti vedere qualcosa del genere:

Strumenti per scrivere un codice WordPress migliore: Composer

Supponendo che tutto sia andato bene, dovresti essere in grado di accedere a WordPress e attivare il plug-in.

Vedere tutto insieme

Una volta attivato il plugin, puoi navigare nella dashboard del tuo sito. Lì, dovresti vedere un avviso ignorabile che sembra esattamente come abbiamo visto all’inizio del post:

Strumenti per scrivere un codice WordPress migliore: Composer

Se sei arrivato così lontano, allora sei a posto! Altrimenti, ricontrolla la tua sintassi per assicurarti che tutto vada bene. Se qualcosa non va, è probabile che non saresti stato in grado di arrivare così lontano e supponendo che tu abbia le costanti di debug di base impostate, probabilmente vedrai dove esiste il problema.

Questo non è tutto

C’è molto di più in Composer e consiglio vivamente di leggere la relativa documentazione. Alcuni di questi argomenti li tratterò quando esaminerò gli strumenti che intendo trattare più avanti in questa serie ma, per ora, consiglio di familiarizzare con alcune delle convenzioni.

Oh! E non consiglio di controllare la directory del fornitore nel tuo repository. Questo può diventare un’enorme directory in seguito e può minare l’intero scopo di Composer.

Nel prossimo post parlerò del perché. Alcune persone lo fanno, e va bene, e l’ho già fatto prima, ma è importante essere giudiziosi su quando lo fai.

Err dal lato del non farlo. E ti spiego perché nel prossimo post.

Fonte di registrazione: tommcfarlin.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More