Tante piccole cose che ancora non sai su Jetpack…

Oggi ho deciso di scriverti questo articolo non tanto perché io sia direttamente un fan di questo plugin. Come dimostra il precedente articolo, è un plugin che ho sempre apprezzato e che riespetto moltissimo; ma ho deciso di scrivere quanto segue per il suo continuo sviluppo e per le cose che mi ha fatto scoprire il nostro Eugenio.

Chiariamoci subito. Se stai leggendo queste parole è perché con WordPress ci sviluppi. E non sto dicendo che sei in grado di acquistare un tema su ThemeForest, modificarlo quel tanto che basta e venderlo ad un cliente, come già detto precedentemente non ritengo queste figure degli sviluppatori WordPress.

Se stai leggendo queste parole, se ti trovi sulle pagine di questo blog è perché sai personalizzare un Loop e non ti perdi quando ad un certo punto mi senti iniziare a parlare di Hook e API. Ma forse è anche per questo motivo che non conosci ancora Jetpack…


Invece questo è un plugin incredibilmente utile anche per noi sviluppatori e onestamente devo proprio ringraziare Eugenio per avermelo fatto conoscere ancora meglio. Il fatto è che non sto parlando soltanto del suo ultimo articolo dove con sapienza ci aiuta a personalizzare la funzionalità dei related post; qua scopriremo assieme altri moduli che questo plugin porta con se e che possono aiutarci con la vita di tutti i giorni!

Un punto di vista interessante

Nel precedente articolo ti ho parlato un po’ più nel dettaglio delle funzioni markettare che questo plugin porta in tavola in un colpo solo ma se devo essere onesto con te, da allora, sono state aggiunte un sacco di funzionalità interessanti che possono aiutare qualsiasi sviluppatore al quale viene richiesta una veloce soluzione a dei problemi che sarebbero stati “noiosi” da risolvere in altri modi.

Prendiamo per esempio i pulsanti di condivisione social e la possibilità di condividere automaticamente su diversi social network la pubblicazione di un mio articolo, grazie a Jetpack posso risolvere tutto con un unico plugin; se mi fossi affidato ad altri sviluppatori avrei dovuto installare almeno altri due plugin.

Prendiamo l’esempio di questo stesso sito, al momento vedi dei pulsanti di condivisione alla tua sinistra perché sto valutando un plugin che prende il nome di SumoMe e che a breve vedrai recensito all’interno di blogAndMore, ma i pulsanti che trovi alla fine e (forse) il messaggio social che ti ha portato a leggere queste righe sono state sviluppate da plugin di casa WordPress.com.

Funzionalità da non Perdere

So già che cosa stai pensando, ma WordPress.com non è il male?!? Ad essere onesto con te questo l’ho pensato anche io per diverso tempo ma negli ultimi anni ho visto dei passi nei confronti degli utenti e sviluppatori del cuore open source che mi hanno davvero lasciato stupefatto.

E’ vero, hai sempre bisogno di un account WordPress.com per poterlo utilizzare; ma se hai già impostato il tuo Gravatar (cosa che ti consiglio indipendentemente di fare), il gioco è fatto!

Avere questo singolo account ti permetterà di accedere ad un incredibile numero di funzionalità aggiuntive che vale proprio la pena di provare e di proporre ai propri clienti. Una cosa molto interessante e che interesserà sicuramente lo sviluppatore che è in te riguarda la facilità con la quale puoi sviluppare in locale!

Fino a qualche tempo fa con Jetpack era difficile impostare un sistema di sviluppo locale; se installavi il plugin in locale o creavi un clone del sito con WordMove, all’interno della bacheca apparivano messaggi di errori fintanto che non si inseriva una specifica costante nel wp-config.php. Fattibile, ma incredibilmente noioso!

Ad oggi invece il plugin controlla il dominio utilizzato e se installato su un localhost si disattiva automaticamente permettendoci di lavorare comodamente con tutte le funzionalità che non richiedono un account WordPress.com per poter funzionare e che tra l’altro sono le più interessanti da personalizzare.

messaggio-jetpack-dev

Ma in questo articolo non voglio parlare soltanto di sviluppo, alcune delle funzionalità che ti presenterò saranno sicuramente interessanti e ti faciliteranno la vita in molti modi (vuoi mettere in conto il fatto che aggiorneremo un unico plugin al posto di decine?), per questo motivo ho deciso di tagliare corto e di passare immediatamente a presentarti la nuova feature che questo plugin mette a disposizione.

Protect

Ci sono state diverse occasioni in cui abbiamo affrontato la sicurezza della tua installazione WordPress e in cui ti abbiamo consigliato di fare un costante backup del tuo sistema e benché l’installazione di Jetpack non risolva quest’ultimo punto, se non pagando il modulo VaultPress, c’è da dire che semplifica incredibilmente la vita quando subiamo degli attacchi brute force.

protector

Se sei un vero sviluppatore WordPress sarai anche interessato alla longevità dei tuoi progetti e sai benissimo che molto spesso il cliente va protetto da se stesso e dai suoi esperimenti; per questo motivo probabilmente nel tempo hai conosciuto plugin come iTheme Security o WordFence. Questi sono degli ottimi prodotti e molto più completi rispetto a questa singola feature di Jetpack, ma vuoi sapere la cosa bella?

Questa feature rappresenta la porta principale dove i cattivi tentano di accedere al tuo sistema WordPress!

E’ verissimo poter cambiare la URL della propria pagina di login, avere dei forti controlli sul pannello di amministrazione e altre funzionalità avanzate sono presenti in plugin completi come i precedenti, ma molto spesso il primissimo problema sono i tentativi che vengono fatti ottenere l’accesso e con questa funzionalità potrai dormire sonni tranquilli, almeno da questo punto di vista.

Con il tuo account WordPress.com rendi Jetpack in grado di mettersi in connessione con il proprio network che monitora e segnala indirizzi IP dai quali vengono eseguiti dei tentativi di accesso malevoli e se un indirizzo IP si trova all’interno di questa lista non raggiungerà neanche la tua pagina di login!

Anche chi sbaglia troppe volte il proprio login, purtroppo entrerà nella lista di IP bloccati per il tuo singolo portale…

Questo si risolve facilmente e in diversi modi (nel backend della tua installazione ma anche dal pannello del tuo WordPress.com) e spero che tu sia d’accordo con me quando dico che già con questa singola feature Jetpack mi ha risolto un sacco di problemi.

Tra l’altro, ti ricordo che con lo stesso account WordPress.com (o Gravatar che dir si voglia) puoi utilizzare il plugin Akismet che, un po’ come Protector, difende il tuo WordPress dai fastidiosi commenti di SPAM.

Widget Visibility

Se mi leggi da diverso tempo dovresti aver compreso la mia passione per il codice e la mia tendenza a voler utilizzare delle soluzioni orientate allo sviluppatore piuttosto che utilizzare delle soluzioni pronte all’uso che si possono aggiungere con l’installazione di qualche plugin; ma la feature che ti sto per presentare mi ha aiutato veramente molto!

L’altro giorno stavo sviluppando un tema partendo dal Genesis Child Theme per sviluppatori e ho dovuto chiedere ad Eugenio se conosceva una soluzione semplice per poter mostrare delle voci di menu aggiuntive agli utenti che si erano loggati all’interno della piattaforma.

Se non conosci ancora il framework Genesis ti consiglio di leggere i nostri recenti articoli a riguardo perché è una tecnologia che stiamo utilizzando moltissimo all’interno di <codeat/> (la nuova azienda che io, Eugenio e Daniele abiamo aperto) e che velocizza in modo incredibile il nostro sviluppo. Oltre a questo a breve andremo a pubblicare sul portale che stiamo per lanciare un corso gratuito dedicato a Genesis e CSS Hero, ti consiglio di non perderlo 😉

Eugenio, che conosce bene Jetpack e questa feature, mi ha guardato un po’ dubbioso e con aria di sufficienza mi ha risposto: ma perché non usi la widget visibility di Jetpack. Ovviamente questa risposta è dovuta anche dalla sua conoscenza di Genesis che gestisce le aree menu attraverso delle aree widget, ma la Widget Visibility integrata in Jetpack è veramente potente!

In poche parole ci permette di scegliere quando una widget deve essere visualizzata senza neanche dover scrivere una singola riga di codice.

Come spesso capita in informatica, raggiungere questa stessa soluzione con il codice avrebbe presentato infinite possibilità. Le prime che mi vengono in mente sono:

  • creare un menu visibile soltanto agli utenti loggati ed utilizzare la funzione is_user_logged_in(), che però sarebbe stata disponibile soltanto nel contesto del menu e del mio lavoro;
  • creare una nuova sidebar da utilizzare soltanto in presenza dell’utente loggato, soluzione che oltre a costringermi ad usare nuovamente la funzione precedente mi avrebbe spinto anche a inserire il cordice per creare una nuova sidebar.

Sicuramente queste non sono soluzioni che ci spaventano, in fin dei conti da bravi sviluppatori a noi piace giocare con il codice, il problema di questa soluzione è che ad ogni cambiamento avremmo dovuto aprire il nostro editor di testo ed applicare le modifiche.

Con questa soluzione invece non dovremo preoccuparci di tutto questo e, anzi, il nostro cliente sarebbe in grado di specificare le sue preferenze data la semplice interfaccia utente che questa funzionalità porta con se. Comprendere se un utente è loggato o meno e offrirgli di conseguenza una data widget è soltanto una delle condizioni che puoi impostare!

Oltre a questa potrai decidere se mostrare o meno una widget in base alla pagina caricata, alla categoria o tag di appartenenza di un dato articolo, alla data di pubblicazione o all’autore di un determinato articolo.

Nell’esempio precedente ti ho parlato semplicemente del menu, ma pensa quanto potrebbe essere utile questa funzionalità quando dobbiamo gestire dei banner o dei moduli iscrizione alla newsletter che devono adattarsi in base ai contenuti mostrati nella pagina. E questo è soltanto un’altro caso di utilizzo che mi è venuto in mente scrivendo queste parole, chissà quante soluzioni interessanti sarai in grado di creare!

Anzi, voglio chiederti un piccolo favore, se stai già utilizzando questa caratteristica o se hai scoperto un modo innovativo per utilizzarla perché non condividi con noi la tua esperienza permettendoci di migliorare la conoscenza di questo plugin?

Site Management

Già con queste prime due feature che ti ho presentato dovresti essere in grado di aver tirato un sospiro di sollievo; ma cosa sei disposto a fare se ti dico che (sempre con Jetpack) sarai in grado di gestire tutte le tue installazioni WordPress?!?

Gestione WordPress con Jetpack

Qualche tempo fa ti ho presentato l’ottimo servizio offerto da Infinite WP; servizio che (a differenza di Eugenio) uso tutt’ora, anche se non so ancora per quanto). Il motivo è presto detto: perché dovrei continuare ad utilizzare un servizio esterno se sono in grado di fare le stesse cose direttamente da WordPress.com?

Sicuramente qua entriamo in una guerra di workflow, ad esempio io non sono ancora disposto a passare completamente alla gestione dei siti via WordPress.com perché in fin dei conti con IfiniteWP gestisco tutta la famiglia AndMore ed è difficile modificare qualcosa che funziona quando stiamo mantenendo dei siti che sono così importanti per noi stessi.

Ma invece per tutti i nuovi siti dove non c’è necessità di un cambiamento ma semplicemente quella di installare una soluzione, la scelta è più che adatta. Ad esempio, quando creo un sito per un cliente, installo e collego immediatamente Jetpack all’account WordPress.com aziendale; così facendo io e i miei soci siamo sempre in grado di apportare modifiche al sito del cliente senza neanche dover vedere il suo backend!

Il bello è che le funzioni di questo modulo non si fermano soltanto agli aggiornamenti, installazioni o rimozioni di temi, plugin o della stessa versione di WordPress; la gestione del sito va molto oltre e potrebbe essere anche molto utile ad un copywriter!

Immagina di avere un unico pannello dal quale ti puoi collegare a tutti i tuoi siti WordPress (ho forse dimenticato di dire gratuitamente) e aggiungere a questi nuovi articoli o pagine per arricchire i propri contenuti, non sarebbe un metodo molto più semplice per migliorare il tuo lavoro?

JSON API

Abbiamo concluso la sezione precedente dando uno sguardo al modo di lavorare di un copywriter e di come una delle nuove funzionalità di Jetpack possa essere di aiuto al suo workflow; che ne dici se adesso diamo una mano a tutti i Front End & Mobile Developer per scoprire una funzionalità che potrebbe facilitare il loro uso di WordPress as a Back End?

Ebbene sì, chiunque ha la necessità di fare delle richieste al database conosce benissimo l’utilità e i trend che il JSON (JavaScript Object Notation) ha portato sui nostri schermi! Da che mondo e mondo, che tu debba costruire una widget che mostra informazioni esterne o che tu stia costruendo una nuova mobile app hai la necessità di interagire con un oggetto scritto in questo modo!

La notazione JSON è molto utile perché permette di passare un gran numero di informazioni con del semplice testo e le richieste da fare al server sono molto più leggere rispetto al dover generare un’intera pagina web, senza notare che grazie alle REST API sarai in grado di puntare un semplice URL per ottenere le informazioni di cui hai bisogno!

Anche se gli sviluppatori di WordPress.org stanno lavorando attivamente ad un set di API che entreranno nelle future versioni della nostra piattaforma preferita, quelli di WordPress.com hanno già pensato a di integrare questo servizio all’interno di Jetpack e di fornirci una comoda console dal quale lanciare le nostre query.

Infatti se inserisci all’interno della console una URL come questa /sites/wpandmore.info/comments/ troverai i 509 commenti che questo stesso sito ha ricevuto sfruttando il sistema dei commenti di WordPress prima di passare al sistema dei commenti di SZ-Google (che non registra i commenti secondo le regole WordPress) che ci ha permesso di accedere alla rete di Google+.

La cosa incredibilmente bella è che con la semplice installazione di Jetpack sarai in grado di aprire le informazioni del tuo sito e di permettere in un colpo solo di renderle disponibili anche in diversi formati!

Conclusioni

Adesso che sai come ottenere un oggetto JSON da parte della tua installazione WordPress puoi tranquillamente andare a scoprire AngularJS e Ionic e imparare a creare le tue applicazioni mobile che ti permeteranno di veicolare le tue informazioni anche all’interno di altri dispositivi.

Quello che voglio fare a questo punto dell’articolo è fare un piccolo riassunto sulle caratteristiche che ti ho appena presentato e che ancora devi scoprire. Ti dico questo perché, anche se dal tuo punto di vista WordPress.com può essere il male, i passi in avanti che ha fatto nei confronti della community open source sono stati veramente notevoli!

Vogliamo prendere in esame il solo Jetpack e le 30+ funzionalità che ci può fornire installare questo singolo plugin, tra l’altro scritto anche dagli sviluppatori della piattaforma di blogging più grande al mondo 😉

E’ vero, forse può rimanere a gola il fatto che per utilizzarlo al pieno delle sue funzionalità è necessario un account WordPress.com ma se ti ricordi, basta avere la propria foto all’interno di un sito WordPress registrata al servizio Gravatar e abbiamo già le credenziali di accesso a questa piattaforma; senza dimenticare che con lo stesso account potrai identificarti con oAuth all’interno della tua piattaforma anche per ricevere i desiderati oggetti JSON!

Insomma, ancora una volta il plugin Jetpack sembra più che adatto anche per noi sviluppatori dato che portano delle feature che semplificano la vita con il raporto con il cliente (ti sei dimenticato i bottoni social o la CDN per le immagini?), mentre altre volte presenta alcune caratteristiche che possono facilitare il nostro lavoro da sviluppatori; che dire?

Mi trovi ancora più convinto della scorsa volta nel dirti che Jetpack è un ottimo prodotto gratuito che deve essere implementato nella nostra professionalità perché incredibilmente utile.

Ovviamente prendi questa come la mia personale opinione ma se anche tu vuoi condividere la tua ricorda che puoi sempre farlo commentando qua sotto o mandadomi una mail attraverso il nostro modulo contatti 🙂

Lascia il tuo Pensiero