Met de release van versie 3.0 introduceerde WordPress aangepaste berichttypen en aangepaste aangepaste taxonomieën die werden geïntroduceerd in v2.8. Sindsdien kunnen WordPress-gebruikers en -ontwikkelaars hun eigen berichttypen en taxonomieën maken. Mensen zijn niet langer geketend naar de saaie "berichten" en "pagina's" met de saaie "categorieën" en "tags".
Ja, het gebruik van aangepaste berichttypen, aangepaste taxonomieën en aangepaste metaboxen zijn cool. Weet je wat cooler is? Creër elk met een enkele regel code.
Ik vind het moeilijk en saai om aangepaste berichttypen en taxonomieën te maken met de register_post_type ()
en register_taxonomy ()
functies. Hoewel ze buitengewoon nuttig zijn, heb ik er een hekel aan als ik een aantal argumenten moet schrijven en deze moet doorgeven met een functie die ik ook moet gebruiken met de add_action ()
functie.
Zelfs als ontwikkelaar is het pijnlijk om dit te doen met elk type bericht en taxonomie dat ik moet maken - ik kan me niet voorstellen hoe moeilijk het is voor beginnende WordPress-gebruikers.
Begrijp me niet verkeerd, je kunt of moet ze ook doen met SuperCPT - maar SuperCPT omarmt het DRY-principe (Do not Repeat Yourself) en verlicht het proces. In de praktijk moet je alleen de "singuliere naam" in kleine letters van je berichttype of taxonomie instellen en SuperCPT de rest met het juiste hoofdlettergebruik.
En het beste is dat je niet te maken hebt met de puinhoop van het maken van aangepaste metabakken en metavelden erin!
Met SuperCPT kunt u metaboxen maken met velden die variëren tussen eenvoudige HTML-elementen van WYSIWYG-editors en datumkiezers. Ons dit allemaal laten doen door eenvoudige arrays te schrijven is veruit de gemakkelijkste manier die ik ooit heb gezien voor het maken van metaboxen.
Ik kan SuperCPT de hele dag prijzen, maar zoals de maker Matthew Boynes zei op de GitHub-pagina van SuperCPT, het bewijs is de pudding en we moeten naar de voorbeelden gaan - meteen nadat we een geweldige screencast van vijf minuten hebben gezien.
Pak een kopie van de WordPress.org Plugin Repository, installeer deze en open vervolgens je thema's functions.php bestand om de magie van SuperCPT te bewerken!
http://vimeo.com/59368054
Zoals je in de video kunt zien, is het maken van aangepaste berichttypen net zo eenvoudig als het typen van een regel code:
array ('name' => __ ('Computer Parts', 'my-locale'), 'singular_name' => __ ('Computeronderdeel', 'mijn-locale')), 'public' => true, 'has_archive '=> waar,)); * / // de SuperCPT-methode $ type_computer_part = new Super_Custom_Post_Type ('computer-part'); ?>
SuperCPT neemt automatisch "computer-part
en verwijdert alle koppeltekens en onderstrepingstekens en hoofdlettergebruik van elk woord. Het stelt ook de "enkelvoud" en "meervoud" vormen van "computer-part
"en gebruikt deze om de labels te vormen, zoals" Nieuw computeronderdeel toevoegen "of" Computeronderdelen zoeken ", enzovoort.
Natuurlijk kunt u labels naar eigen inzicht instellen. In feite kun je alle argumenten instellen die register_post_type ()
heeft, als je graag speelt. Ga naar de sectie "Aangepaste berichttypen" van SuperCPT Wiki om de volledige lijst met argumenten en hun standaardwaarden te vinden.
$ type_computer_part-> set_icon ('display');
Als u zich afvraagt wat u als parameter moet gebruiken, controleert u de SuperCPT-pagina onder de Tools van uw admin-paneel - u zult de namen van de pictogrammen vinden. Het maken van aangepaste taxonomieën met SuperCPT lijkt veel op het maken van aangepaste berichttypen. Nogmaals, een enkele regel volstaat voor SuperCPT:
__ ('Manufacturers', 'my-locale'), 'rewrite' => array ('slug' => __ ('manufacturer', 'my-locale')))); * / // de SuperCPT-methode $ tax_manufacturer = nieuwe Super_Custom_Taxonomy ('fabrikant'); ?>
Net als bij de aangepaste berichttypen worden de argumenten van aangepaste taxonomieën automatisch ingesteld, maar deze kunnen ook worden gewijzigd. Controleer de sectie "Aangepaste berichttypen" van SuperCPT Wiki voor meer informatie over argumenten.
Zoals u kunt raden: deze ene regel code hierboven kan uw aangepaste taxonomie niet koppelen aan een berichttype. U moet dat doen met een helperfunctie van SuperCPT, zoals dit:$ tax_manufacturer-> connect_post_types ('computer-part');
Maak je vast, dit is mijn favoriete onderdeel! :)
Serieus, het beste deel van SuperCPT is het gemak van het toevoegen van aangepaste post-metaboxen. U hoeft niet te rommelen met HTML-codes of u zorgen te maken dat uw gegevens worden opgeslagen, opgeschoond en wat niet. We kunnen deze keer echter geen enkele regelcodes gebruiken om metabakken te maken (uiteraard).
Er zijn twee essentiële functies: add_meta_box ()
en add_meta_boxes ()
. (We zullen bij de eerste blijven voor deze tutorial.) De ID kaart
en velden
parameters zijn vereist, maar er zijn een heleboel andere parameters op de wiki als je deze wilt zien.
add_meta_box (array ('id' => 'our-review', // de titel wordt geconverteerd van 'id', als er geen 'titel' parameter 'fields' => array ('score' => array ('label') => __ ('Our Score', 'my-locale'), 'type' => 'radio', 'options' => array ('1', '2', '3', '4', '5 ')),' release-date '=> array (' label '=> __ (' Release Date ',' my-locale '),' type '=>' date '), // yes, er is een datum picker ... 'short-comment' => array ('label' => __ ('A Short Comment', 'my-locale'), 'type' => 'textarea'), 'review-text' => array ( 'label' => __ ('Volledig overzicht', 'mijn-locale'), 'type' => 'wysiwyg') // ... en er is een WYSIWYG-tekstgebied! :)))); ?>
Nu, ik weet dat er veel zijn rangschikking
s, maar er zijn dingen die zelfs SuperCPT kan voorspellen, toch? :)
Er zijn veel veldelementen die je in de metaboxen kunt plaatsen:
En als laatste: je hebt een wrapper-functie nodig om deze aangepaste postsoorten in te stellen en die functie aan een actie te koppelen. SuperCPT beveelt de after_setup_theme
haak maar als je een plug-in gaat schrijven om de aangepaste berichttypen en taxonomieën te maken, kun je maar beter de haak gebruiken plugins_loaded
om te wachten tot de plug-ins zijn geladen. Je moet ook zeker zijn van de Super_Custom_Post_Type
klasse bestaat voordat ernaar wordt verwezen.
Dit is de demo-wrapper-functie uit de SuperCPT-documentatie:
Daar weet je alles over de eenvoudigste aangepaste functie voor post en taxonomie van het type post, SuperCPT! Raadpleeg de volledige documentatie voor meer informatie. Er zijn een aantal helperfuncties, acties en filters die je misschien leuk vindt.
Wat denk je van deze coole plug-in voor WordPress? Vertel ons wat je denkt door hieronder te reageren, en als je het leuk vindt (ik ben er vrij zeker van dat je dat zult doen!), Vergeet dan niet om het bericht te delen!