Folosind SuperCPT pentru a crea tipuri personalizate de posturi, taxonomii și metale

Odată cu lansarea versiunii 3.0, WordPress a introdus tipuri personalizate de posturi și taxonomii personalizate care au fost introduse în v2.8. De atunci, utilizatorii și dezvoltatorii WordPress pot crea propriile tipuri de posturi și taxonomii. Oamenii nu mai sunt legat la posturile și paginile plictisitoare cu "categoriile" și "etichetele" plictisitoare,.

Da, folosind tipuri personalizate de postări, taxonomiile personalizate și casetele meta personalizate sunt minunate. Știi ce e mai răcoros? Crearea fiecăruia cu o singură linie de cod.


Efortul de a crea tipuri personalizate de posturi și taxonomii

Mi se pare greu și plictisitor să creez tipuri personalizate de posturi și taxonomii cu register_post_type () și register_taxonomy () funcții. În timp ce sunt extrem de utile, o urăsc când trebuie să scriu o grămadă de argumente și să le transmit cu o funcție pe care trebuie să o folosesc și eu ADD_ACTION () funcţie.

Chiar și ca dezvoltator, este dureros să faci acest lucru cu fiecare tip de post și taxonomie pe care trebuie să-l creez - nu-mi pot imagina cât de greu este pentru utilizatorii WordPress începători.

Nu mă înțelegeți greșit, încă mai puteți sau trebuie să le faceți și cu SuperCPT - dar SuperCPT îmbrățișează principiul DRY (Do not Repeat Yourself) și facilitează procesul. Practic, trebuie doar să setați numele "unic" al tipului dvs. de post sau al taxonomiei, iar SuperCPT se ocupă de restul cu capitalizarea corespunzătoare.

Și cea mai bună parte este că nu trebuie să te descurci cu mizeria de a crea meta-boxuri personalizate și câmpuri meta în ele!

SuperCPT vă permite să creați căsuțe meta cu câmpuri care variază între elementele HTML simple din editorii WYSIWYG și selectorii de date. Lăsându-ne să facem toate aceste lucruri prin scrierea unor simple matrice este de departe cel mai simplu mod pe care l-am văzut pentru crearea de meta-boxe.


Folosind SuperCPT, soluția All-in-One

Pot să-l laud pe SuperCPT toată ziua, dar creatorul Matthew Boynes a spus în pagina GitHub a SuperCPT, dovada este în budincă și ar trebui să ajungem la exemple - chiar după ce vedem un scenariu minunat de cinci minute.

Luați o copie din Depozitul de pluginuri WordPress.org, instalați-o și apoi deschideți tema functions.php fișier pentru a lucra Magic SuperCPT!

The Screencast

http://vimeo.com/59368054

Crearea tipurilor de postări personalizate

După cum puteți vedea în videoclip, crearea de tipuri personalizate de mesaje este la fel de ușoară ca introducerea unei linii de cod:

  array ('nume' => __ ('Computere', 'my-locale'), singular_name '=> '=> adevărat,)); * / // metoda SuperCPT $ type_computer_part = noul Super_Custom_Post_Type ('computer-part'); ?>

SuperCPT ia automat "calculator-o parte"și elimină orice cratimă și subliniere și capitalizând fiecare cuvânt. De asemenea, stabilește formele "singulare" și "plural" ale "calculator-o parte"și le folosește pentru a forma etichetele, cum ar fi" Adăugați o nouă parte a computerului "sau" Căutare componente pentru computer "și așa mai departe.

Desigur, puteți seta orice etichete așa cum doriți. De fapt, puteți seta toate argumentele pe care le aveți register_post_type () dacă vrei să te joci. Treceți la secțiunea "Tipuri de postări personalizate" ale SuperCPT Wiki pentru a afla întreaga listă de argumente și valorile lor implicite.

SuperCPT include un set gratuit de pictograme numit Glyphicons pentru a vă seta pictogramele pentru tipurile de posturi. Este la fel de ușor ca tastarea unei alte linii de cod: $ type_computer_part-> set_icon ("afișare"); Dacă vă întrebați ce să utilizați ca parametru, verificați pagina SuperCPT sub Instrumentele panoului admin - veți găsi numele icoanelor.

Crearea taxonomiilor personalizate

Crearea taxonomiilor personalizate cu SuperCPT este foarte asemănătoare cu crearea de tipuri personalizate de postări. Din nou, o singură linie este suficientă pentru SuperCPT:

  __ ("producători", "my-locale"), "rescrie" => array ('slug' => __ ('producător', 'my-locale')))); * / // metoda SuperCPT $ tax_manufacturer = noua Super_Custom_Taxonomy ("producător"); ?>

Ca și în cazul posturilor particularizate, argumentele taxonomiilor personalizate sunt setate automat, dar pot fi modificate. Verificați secțiunea "Tipuri personalizate de postări" din SuperCPT Wiki pentru a afla mai multe despre argumente.

După cum puteți să ghiciți: această singură linie de cod de mai sus nu vă poate conecta taxonomia personalizată la un tip de postare. Trebuie să faceți acest lucru cu o funcție de ajutor a SuperCPT, astfel: $ tax_manufacturer-> connect_post_types ("calculator-parte");

Crearea de mese personalizate

Buckle sus, aceasta este partea mea preferata! :)

Serios, cea mai bună parte despre SuperCPT este ușurința de a adăuga meta-boxuri personalizate. Nu trebuie să vă deranjezi niciun cod HTML sau să vă faceți griji cu privire la salvarea, dezinfectarea și nu mai mult. Cu toate acestea, nu putem folosi coduri de linie unice pentru a crea meta-boxes de data aceasta (evident).

Există două funcții esențiale: add_meta_box () și add_meta_boxes (). (Vom rămâne cu primul pentru acest tutorial.) id și câmpuri sunt necesare parametri, dar există o mulțime de alți parametri pe wiki dacă doriți să vedeți.

 add_meta_box (array ('id' => 'our-review'), // titlul este convertit din id dacă nu există parametru 'title' 'fields' = array (' => __ ('Scorul nostru', 'my-locale'), 'type' => 'radio', 'options' => array ('1', '2', '3', '),' data de eliberare '=> array (' label '=> __ (' Data de lansare ',' my-locale ' selectorul "short-comment" => array ('label' => 'label' => __ ('Revizuire completă', 'my-locale'), 'type' => 'wysiwyg') // ... și există o zonă de text WYSIWYG :)))); ?>

Știu că sunt multe mulțimes, dar există lucruri pe care chiar SuperCPT le poate prezice, nu? :)

Există o mulțime de elemente de câmp pe care le puteți plasa în casetele meta:

  1. Câmpurile booleene ascunse
  2. Intrări regulate de text
  3. Textarea regulată
  4. Editorii WYSIWYG
  5. Casetele de selectare
  6. Cutii radio
  7. Selectați casetele
  8. Colectoare de date
  9. Și noile câmpuri de intrare HTML5 cum ar fi: tel, e-mail etc..
Putem de asemenea să tragem datele din alte tipuri de posturi personalizate și să completați caseta de selectare, caseta radio sau câmpurile cu casete selectate cu aceste date. Acest lucru poate fi foarte util în unele cazuri!

Funcția Wrapper

Un ultim lucru: aveți nevoie de o funcție de împachetare pentru a seta aceste tipuri personalizate de posturi și cârlig care funcționează la o acțiune - SuperCPT recomandă after_setup_theme cârlig, dar dacă aveți de gând să scrie un plugin pentru a crea tipuri personalizate post și taxonomii, mai bine utilizați cârlig plugins_loaded să așteptați încărcarea pluginurilor. De asemenea, trebuie să fii sigură Super_Custom_Post_Type există o clasă înainte de ao face referire.

Iată funcția de împachetare demo din documentația SuperCPT:

 

Concluzie

Acolo, acum știi totul despre cel mai ușor tip personalizat post și manager de taxonomie, SuperCPT! Pentru informații suplimentare, consultați documentația completă. Există o mulțime de funcții ajutoare, acțiuni și filtre care vă plac.

Ce crezi despre pluginul cool WordPress? Spuneți-ne ce credeți prin comentarea de mai jos și, dacă v-ați plăcut (sunt sigur că veți face asta), nu uitați să împărtășiți postarea!

Cod