Aangepaste berichttypen met aangepaste categorieën

wordpress

WordPress wordt zo'n onmisbaar platform voor zoveel bedrijven, maar het gemiddelde bedrijf profiteert niet eens van een fractie van de mogelijkheden. Een van onze klanten wilde een bronsectie aan hun site toevoegen, maar wilde dit niet doen met pagina's of in blogposts. Dit is precies wat WordPress ondersteunt Aangepaste Bericht Types voor!

In dit geval wilden we een Resource-sectie toevoegen aan een van de sites van onze klanten. Het is vrij eenvoudig om een ​​toe te voegen Custom Bericht Type aan uw WordPress-thema. U voegt de volgende code toe met behulp van de functie register_post_type naar uw functions.php-pagina:

// Bronnen toevoegen Aangepast berichttype add_action ('init', 'create_post_type'); function create_post_type () {register_post_type ('resources', array ('labels' => array ('name' => __ ('Resources'), 'singular_name' => __ ('Resource'), 'add_new' => __ ('Add New'), 'add_new_item' => __ ('Add New Resource'), 'edit_item' => __ ('Edit Resource'), 'new_item' => __ ('New Resource'), 'all_items' => __ ('Alle bronnen'), 'view_item' => __ ('Bekijk bron'), 'search_items' => __ ('Zoekbronnen'), 'not_found' => __ ('Bron niet gevonden'), 'not_found_in_trash' => __ ('Geen bronnen in prullenbak'), 'parent_item_colon' => '', 'menu_name' => __ ('Bronnen')), 'public' => waar, 'has_archive' => waar, 'rewrite' => array ('slug' => 'resources'), 'supports' => array ('title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments'))) ; }

Iets moeilijker te vinden was hoe je het moest maken aangepaste categorieën voor jouw Custom Bericht Type. Een van de redenen waarom het moeilijk is om erachter te komen hoe dit moet, is omdat het een aangepaste taxonomie wordt genoemd en de register_taxonomie functie om het aan te passen. In dit geval willen we brontypen zoals webinars, whitepapers, enz. aan het thema toevoegen... dus hier is wat extra code voor het bestand Functions.php:

add_action ('init', 'resource_category_init', 100); // 100 dus het berichttype is geregistreerd functie resource_category_init () {register_taxonomy ('type', 'resources', array ('labels' => array ('name' => 'Resource Type', 'singular_name' => ') Brontype ',' search_items '=>' Zoek brontypen ',' popular_items '=>' Populaire brontypen ',' all_items '=>' Alle brontypen ',' edit_item '=> __ (' Bewerk brontype ') , 'update_item' => __ ('Update brontype'), 'add_new_item' => __ ('Nieuw brontype toevoegen'), 'new_item_name' => __ ('Nieuw brontype')), 'hiërarchisch' => 'false', 'label' => 'Brontype')); }

Met aangepaste berichttypen kunt u ook het archief en afzonderlijke pagina's voor uw aangepaste berichttypen ontwerpen. Kopieer gewoon de archive.php- en single.php-bestanden. Hernoem de kopieën met de Custom Bericht Type in de naam. In dit geval zijn dat archive-resources.php en single-resources.php. Nu kunt u die pagina's aanpassen zoals u wilt dat de bronpagina eruitziet.

2 reacties

  1. 1

    Een andere manier zou zijn om een ​​plug-in te gebruiken zoals Easy Custom Content Types of Types.

    Met deze plug-ins kunt u ook eenvoudig aangepaste metaboxen toevoegen en aangepaste pagina- en postsjablonen maken.

    • 2

      Zeer waar @ google-d5279c8b66d25549a0ec3c8dd46a3d1a: disqus! Ik zal eerlijk zijn dat ik het gevoel heb dat een paar van de plug-ins een hoop overhead aan de blog toevoegen ... en je kunt een thema niet zomaar van de ene site naar de andere verplaatsen, je moet ervoor zorgen dat je de plug-ins ook verplaatst . Het is de enige reden waarom ik eraan werk om de nodige functies in de themabestanden in te bedden.

Wat denk je?

Deze site gebruikt Akismet om spam te verminderen. Ontdek hoe uw reactiegegevens worden verwerkt.