I framework WordPress ottengono una nuova casa accogliente - IncludeWP

Pubblicato: 2016-07-27

All'inizio di quest'anno (marzo 2016), il team di revisione dei plugin ha rilasciato una dichiarazione su make.wordpress.org secondo cui i framework non sono più consentiti nel repository ufficiale dei plugin.

Abbiamo deciso di prenderci la responsabilità di creare un degno repository per i framework WordPress e abbiamo creato IncludeWP. Una casa, o meglio, una classifica, per visualizzare tutti i framework open source per gli sviluppatori di plugin e temi di WordPress. Uno sportello unico per gli sviluppatori per valutare ciò che è attualmente disponibile sul mercato.

Era iniziato come un progetto collaterale del fine settimana divertente e rinfrescante che il team aveva deciso di mettere insieme tre settimane fa e il piano era di pubblicarlo immediatamente. Ma, nel corso degli anni ho adottato l'abitudine di non rilasciare nulla prima di aver ricevuto un feedback da persone di cui mi fido dell'opinione, quindi ho deciso di prendere prima alcuni dei miei amici dalla community di WordPress.

Abbiamo ricevuto ottimi feedback e alcuni suggerimenti sull'interfaccia utente, ma un commento ha attirato la maggior parte della mia attenzione: Luca Fracassi di Addendio ha dichiarato: "Vova, sarebbe fantastico se potessi fare clic su un framework e vedere quali plugin e temi lo stanno effettivamente utilizzando .”

“Diavolo sì! Sarebbe fantastico." Ho pensato. Ma non è possibile che passiamo il nostro tempo a cercare e aggiungere manualmente quei plugin e temi.

Il repository IncludeWP era iniziato come un progetto collaterale del fine settimana divertente e rinfrescante per il team di Freemius.Tweet

Dopo un po' di avanti e indietro con Luca, ci siamo resi conto che possiamo sfruttare le API di WordPress.org e SVN per identificare automaticamente i plugin e l'associazione di temi con i framework in WordPress.org. Così abbiamo deciso di unire le forze.

Luca ha trascorso alcuni giorni a sviluppare una logica di identificazione del framework e l'ha eseguita su .org e ha gentilmente esposto un endpoint API personalizzato per consentirci di consumare quei dati. Abbiamo sfruttato l'endpoint di Luca per recuperare i dati di plugin e temi da WordPress.org e li abbiamo presentati nella pagina del framework.

Quadro CMB2

Plugin e temi su WordPress.org che utilizzano CMB2

Ci è voluta un'altra settimana per completarlo, ma ora è 10 volte più potente! Gli sviluppatori possono effettivamente vedere quali altri prodotti stanno utilizzando il framework. E nello spirito dell'open source, è disponibile per l'uso pubblico su GitHub.

Perché i framework, gli SDK e le librerie di WordPress sono fantastici?

La riutilizzabilità del codice è fantastica! In realtà fa parte dei fondamenti dello sviluppo. Così semplice. Guarda WooCommerce, la piattaforma di eCommerce online più popolare, nata come fork di Jigoshop.

Come sviluppatori, cerchiamo di ottimizzare il nostro codice e assicurarci che non ci sia ridondanza. Ma quando si tratta del lavoro di altri sviluppatori, siamo improvvisamente molto esigenti.

Essendo uno sviluppatore, so cosa stai pensando...

"Nessuno può scrivere codice come me." Notizie flash: ci sono molti sviluppatori di talento là fuori, quindi smettila di essere snob e inizia a riutilizzare!

Inoltre, alcuni framework sono utilizzati da migliaia di sviluppatori, distribuiti su centinaia di migliaia di siti Web e sono in produzione da molti anni. È molto probabile che quelle librerie siano molto più a prova di bug rispetto al codice appena scritto.

“Posso costruirlo da solo, non ho bisogno di alcun framework” – Sì, puoi! Ma perché? Perché vorresti reinventare la ruota? Capisco; c'è una curva di apprendimento quando non è il tuo codice. Ma d'altra parte, imparare un framework con una solida documentazione sarà sicuramente più veloce che sviluppare tutto da soli, da zero.

“Perché ho bisogno del sovraccarico? Uso solo un piccolo sottoinsieme di ciò che gestisce la libreria. Hack, il framework è così gonfio, è più grande del mio plugin! – La maggior parte dei plugin inizia con solo una minuscola funzionalità. Forse oggi è tutto ciò di cui hai bisogno, ma man mano che il tuo plugin o tema WordPress si evolve, probabilmente aggiungerai più cose. Avere solide basi ti semplificherà la vita e ti farà risparmiare molto tempo in futuro. Prova a pianificare a lungo termine e scegli un framework che si adatti meglio alle tue esigenze e alla roadmap.

In conclusione: smetti di perdere tempo a riscrivere le stesse cose più e più volte. Esistono tipo 20 diversi framework che gestiscono campi personalizzati

Perché abbiamo deciso di rendere open source il progetto?

Uno dei motivi per cui abbiamo iniziato con Freemius per WordPress è la sua fantastica community e la mentalità open source. Crediamo fermamente nell'open source e nel suo potere, e questo è uno dei nostri modi per restituire all'ecosistema.

In secondo luogo, sto predicando sulla riutilizzabilità del codice. Il minimo che posso fare è fornire la possibilità ad altri sviluppatori di riutilizzare il nostro codice per i loro progetti. Riutilizzando questa base di codice, tutti possono facilmente creare un minisito di elenco di tipo di categoria simile per i repository GitHub.

Riutilizzando questa base di codice, tutti possono facilmente creare un mini-sito di elenco di tipo di categoria simile per i repository GitHub.Tweet

Un trabocchetto del framework WordPress: il controllo delle versioni

WordPress non è un sistema operativo e non ci sono silos tra i diversi plugin e temi. Inoltre, il core di WordPress non ha un meccanismo di dipendenza dalle librerie in atto. Ciò significa che se due plug-in utilizzano lo stesso framework con versioni diverse, potrebbero verificarsi problemi di compatibilità con le versioni precedenti, generare errori e, nel peggiore dei casi, interrompere completamente il sito.

Quindi segui il mio consiglio amichevole: prima di scegliere il tuo framework, libreria o SDK preferito, dovresti assicurarti che gestisca il controllo delle versioni.

Dovresti assicurarti che il framework scelto gestisca il versioning.Tweet

Come scegliere i framework giusti per il tuo plugin o tema

Beh, dipende.

Se stavo iniziando un nuovo plugin o tema WordPress, guarderei quanto segue (non necessariamente in questo ordine):

  • Per prima cosa controllerei cosa c'è sul mercato per capire il diverso insieme di caratteristiche e funzionalità offerte dai framework.
  • Esaminerei sicuramente la popolarità dei progetti. I progetti più popolari hanno probabilmente una comunità più forte dietro di loro, il che significa che dovrebbe essere più facile ottenere aiuto/consigli. Probabilmente significa anche che i principali bug del framework erano già stati eliminati.
  • Passerei più tempo a esaminare nuovi framework. Con il progredire delle pratiche di sviluppo web. Inoltre, il core di WordPress si sta evolvendo, i nuovi framework possono essere più efficienti, sfruttare nuovi meccanismi di base: fare di più con meno codice.
  • Vorrei chiedere ai miei amici sviluppatori della community di WordPress, persone di cui mi fido e che possono fornirmi un feedback sincero basato sulla loro esperienza.

Ho un quadro! come posso aggiungerlo a IncludeWP?

Vai tranquillo! Il sito Web è un progetto open source su GitHub, è sufficiente eseguire il fork del repository IncludeWP, aggiungere il framework come <name>.php nella cartella src/frameworks e inviare una richiesta pull.

Assicurati di seguire alcune semplici linee guida:

  • GPL: il framework deve essere concesso in licenza come GPL, quindi i plugin e i temi che lo utilizzano possono essere elencati su WordPress.org (un framework non GPL rende il plugin non GPL).
  • GitHub: il framework deve avere un repository pubblico su GitHub a cui possiamo collegarci e da cui estrarre le statistiche.
  • Attenersi al formato: compila tutti gli stessi campi degli altri framework in src/frameworks.
  • WordPress.org (opzionale): se il framework è già elencato come plug-in su WordPress.org, aggiungi un riferimento allo slug del plug-in.
  • Breve descrizione: mantieni la descrizione per la pagina panoramica breve e dolce.

Allora, qual è il prossimo?

Condividi il progetto IncludeWP

Ora tocca a te spargere la voce nella comunità. Dillo ai tuoi amici, condividilo su Twitter, aggiungi il progetto a GitHub... e riutilizzalo!