Il concetto di Plugin Territory in WordPress

Immagina che qualcuno cominci un negozio con un tema WordPress elegante, che va avanti per mesi con quel tema, e poi vuole cambiarlo. Ora, immagina che tutti i suoi cursori, widget e persino prodotti svaniscano dal sito web. Immagina la sua frustrazione. Vorresti provocare questo tipo di delusione?

C'è un concetto chiamato "territorio del plugin" che specifica le cose che gli sviluppatori del tema dovrebbero tralasciare dai loro temi. In questo articolo, ho intenzione di andare oltre le basi di questo concetto.

Un'introduzione al territorio del plugin

Cominciamo subito: la mentalità di base dietro al concetto di "territorio plugin" è tralasciare cose che impediscono agli utenti di cambiare tema. Ciò significa che dovresti creare temi che sono commutabile quando smetti di sviluppare il tema o l'utente ha bisogno (o vuole) di cambiare il tema. E devi tenere a mente che un tema WordPress dovrebbe riguardare il cambiamento di sembra di WordPress, invece di come lavori.

Se hai sfogliato i sottotitoli del resto di questo articolo, probabilmente hai un'idea più chiara di cosa sia "territorio del plugin": non puoi cambiare il core di WordPress, usare shortcode o slider, creare tipi di post personalizzati, tassonomie o meta-box, forniscono funzionalità che avvantaggiano il sito web SEO e cose del genere. 

Perché? Perché gli utenti del tuo tema non saranno in grado di cambiare temi senza perdere i loro tipi di post personalizzati, cursori, codici brevi, impostazioni SEO e così via, che causeranno frustrazione e gli utenti si troveranno di fronte a due opzioni: abbandonare il tema e avviare il tutto il sito da zero, o cedere e continuare a utilizzare il tema con costrizione.

Il blog Make WordPress ha una pagina dedicata a "plugin territory" che copre tutte le basi con poche parole, ma credo che possiamo elaborare l'argomento con quello che vediamo nella comunità di WordPress e il etichetta di creare temi.

Cose da lasciare fuori dai temi

Ora che abbiamo stabilito cosa significa "territorio del plugin", possiamo iniziare ad applicare il concetto con alcuni esempi. Alcune espressioni potrebbero sembrare incomplete, controverse o addirittura sbagliato a te, quindi sentiti libero di contribuire a questa sezione con i tuoi commenti sull'utilizzo del concetto di "territorio plugin".

Cominciamo!

Modifiche e repliche core

Questo è un gioco da ragazzi: il tuo tema non dovrebbe alterare o replicare le funzionalità di base. Cioè, non dovresti abusare dei poteri dell'estensibilità di WordPress limitando la funzionalità di WordPress e astenervi dal creare nuove funzioni quando le funzioni principali possono fare lo stesso lavoro.

Prendi i feed, ad esempio: vuoi creare un tema di rivista per gli editori che richiederanno denaro dai loro lettori per il contenuto. WordPress ha la funzionalità "Feed RSS", quindi potrebbe sembrare una buona idea rendere il tuo tema disabilitare completamente la funzione "feed" ... eccetto che è un molto cattiva idea. 

Prima di tutto, perché pensi che gli utenti del tuo tema vogliano disabilitare comunque i feed RSS? In secondo luogo, ci sono molti plugin che possono fare l'atto, il che significa che puoi raccomandare tali plugin e lasciare la decisione agli utenti. (Ecco un mio tutorial su come raccomandare o addirittura richiedere i plugin: "Uso della libreria di attivazione dei plug-in TGM nei tuoi temi".)

Un altro buon esempio su questo problema sarebbe la divisione delle parti prima e dopo il etichetta. Non devi usare il esplodere() funzione per dividere le due parti, perché c'è una funzione per l'atto nel nucleo: il get_extended () la funzione fa abbastanza bene il lavoro. (Ne ho altri sette gemme per te in questo tutorial, se sei interessato.) Controllare le funzioni principali prima di scriverle è una cosa intelligente da fare.

Shortcode, cursori e widget

Gli sviluppatori di temi di solito si confondono sul territorio dei plugin quando ne dici alcuni elementi di design cadere nel territorio pure. E hanno ragione di confondersi: come può esserci un cursore nel territorio dei plugin, quando gli slider sono una delle parti più importanti dei siti web aziendali attuali di cookie-cutter?

Ecco come: se un utente abbandona il tuo tema, dovrà rinunciare al / ai cursore / i. Come nell'esempio che ho menzionato all'inizio di questo articolo, creerà frustrazione. E lo stesso vale per shortcode e widget: nessuno dovrebbe rinunciare ai capolettera, ai widget di condivisione dei social media o ai feed di Twitter quando smettono di usare il tema. Devono essere tutti forniti sotto forma di plug-in in modo che gli utenti non debbano creare nuove diapositive da zero o pulire vecchi bit shortcode non funzionali dal loro contenuto.

Tipi di post personalizzati, tassonomie e caselle Meta

Nel caso degli slider, anche i tipi di post personalizzati entrano in gioco: nella maggior parte dei temi, le diapositive sono un tipo di post personalizzato e, se questo tipo di post personalizzato viene perso quando l'utente attiva un altro tema, i dati andranno persi. Ovviamente, il caso degli slider è un altro esempio, ma è un ottimo esempio per i tipi di post personalizzati che si trovano nel territorio dei plugin.

Lo stesso vale per le tassonomie personalizzate e i meta box personalizzati. Non puoi rompere i contenuti degli utenti se decidono di rinunciare al tuo tema, quindi le tassonomie personalizzate dovrebbero essere servite anche come plugin. Le meta box personalizzate sono un po 'diverse: se il contenuto della meta-box altera l'aspetto (come le radiobox per cambiare il post-styling), è la funzionalità del tema stesso; ma se il contenuto del meta-box cambia il contenuto del post (come una tabella di revisione del film), dovrebbe essere servito come un plugin.

Impostazioni SEO e analisi

Non voglio perdere tempo a ripetere le stesse parole: non puoi abbandonare le valutazioni SEO dei tuoi utenti quando cambiano temi! Ma ancora una volta, nessuno ti fermerà se lo servirai come plugin e lo consiglierò con la libreria di attivazione dei plug-in TGM.

Un caso speciale su temi speciali

Circa un anno fa, ho scritto un articolo intitolato "The Curious Case of Specialty Themes". Permettimi di citare me stesso:

È necessario sviluppare un tema WordPress per modificare l'aspetto di un sito Web ed evitare di offrire funzionalità integrate nel suo nucleo. (...) Ma a volte, un progetto richiede che design e funzionalità lavorino insieme. In questo caso, abbiamo un'eccezione e il nome dell'eccezione, utilizzato in tutto il mercato WordPress, è "temi speciali".

Un "tema speciale" è una sorta di tema WordPress che ha uno scopo ben preciso come un sito Web di crowdfunding o un sistema di gestione dell'apprendimento (LMS). Sebbene possa essere esteso con gli hook di WordPress (azioni e filtri) o ridisegnato con temi secondari, i siti web creati con questi temi dovrebbero lavorare con lo stesso tema nel corso della sua vita. Ecco perché non è considerata una "cattiva pratica" per questi temi invadere il territorio del plugin.

È sicuramente un'area grigia: ThemeForest, ad esempio, non consente di invadere il territorio del plugin anche per temi speciali. Mi piacerebbe sapere anche cosa ne pensi, quindi chiacchieriamo nei commenti!

Conclusione per oggi

Come persone che guadagnano denaro sviluppando con WordPress, noi naturalmente vuoi che WordPress cresca sempre. Ancora, noi sono la ragione della sua crescita, quindi siamo responsabili di contribuire alla sua continua crescita. E non puoi vedere la crescita in ambienti incoerenti, quindi dobbiamo stare attenti a gestirne la coerenza. Questo è il motivo per cui dobbiamo preoccuparci del "territorio plugin" e lasciare che i plugin gestiscano il funzionalità, mentre i temi gestiscono il visualità.

Per coloro che sono interessati, abbiamo abbondanza di plugin WordPress disponibili sia per l'acquisto, l'uso, sia per lo studio sul mercato.

Sono abbastanza sicuro che tu abbia qualcosa da dire su questo argomento, quindi sentiti libero di condividere i tuoi pensieri nella sezione commenti qui sotto. E se ti è piaciuto l'articolo, non dimenticare di condividerlo con i tuoi amici!