Creatively creating custom post types!

Post on 13-Jan-2015

126 views 0 download

Tags:

description

 

Transcript of Creatively creating custom post types!

Creatively Creating Custom Post TypesNikhil Vimal #WordUpMPLS

Hi, I’m Nikhil

• I develop with WordPress• I can be found on Twitter @TechVoltz• This my first talk ever

Custom Post Types?They Rock (Seriously)

But what are they?

• Instead of using default posts and categories in WordPress, use Custom Post Types

•You can add a lot of cool things that are not in a Default WordPress install

•Added in WordPress 3.0

Why Do You need them?Organization

PortfolioPost Type could be paintings

Online StorePost Type could be Products

Your only limitation isYour imagination

“WordPress can hold and display many different types of content.”

-WordPress Codex

But how do we add Custom Post Types?With a plugin of course

Create a file called myposttype.php<?php/** * Plugin Name: Your Custom Post Type * Plugin URI: http://yourpluginswebsite.com * Description: A brief description of your Plugin. * Version: The Plugin's Version Number, e.g.: 1.0 * Author: Your Name * Author URI: http://yourwebsite.com * License: A "Slug" license name e.g. GPL2 */

add_action('init', 'wordup_sessions');

function wordup_sessions() { $wordup_args = array( 'public' => true, 'has_archive' => true, 'query_var' => 'wordup', 'menu_position' => 5, 'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments' ), 'labels' => array( 'name' => 'WordUp Sessions', 'singular' => 'WordUp Session', 'add_new' => 'Add Session', 'add_new_item' => 'Add Session', 'edit_item' => 'Edit Session', 'new_item' => 'New Session', 'view_item' => 'View Session', 'search_items' => 'Search WordUp', 'not_found' => 'No sessions found', 'not_found_in_trash' => 'No Sessions found in the Trash', ), ); register_post_type('WordUp', $wordup_args ); }

Lets examine all the code!!

add_action('init', 'wordup_sessions');

function wordup_sessions() { $wordup_args = array( 'public' => true, 'has_archive' => true, 'query_var' => 'wordup', 'menu_position' => 5, 'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments' ),

'labels' => array( 'name' => 'WordUp Sessions', 'singular' => 'WordUp Session', 'add_new' => 'Add Session', 'add_new_item' => 'Add Session', 'edit_item' => 'Edit Session', 'new_item' => 'New Session', 'view_item' => 'View Session', 'search_items' => 'Search Sessions', 'not_found' => 'No sessions found', 'not_found_in_trash' => 'No Sessions found in the Trash', ),);

register_post_type('WordUp', $wordup_args ); }

Styling your CPT PageWith single-$posttype.php

Having an Archive Page for your CPTWith archive-$posttype.php

TaxonomiesMore Organization

“Basically, a taxonomy is a way to group things together”

-WordPress Codex

TaxonomiesCategories and Tags

PortfolioTaxonomy is oil painting

After our Custom Post type function….

add_action('init', 'wordup_tracks');

function wordup_tracks(){ $track_args = array( 'hierarchical' => true, 'query_var' => ‘wordup_tracks', 'show_tagcloud' => true,

'labels' => array( 'name' => 'Tracks', 'edit_item' => 'Edit Track', 'update_item' => 'Update Track', 'add_new_item' => 'Add New Track', 'new_item_name' => 'New Track', 'all_items' => 'All Tracks', 'search_items' => 'Search Tracks', 'popular_items' => 'Popular Tracks', 'add_or_remove_items' => 'Add or remove Tracks', 'choose_from_most_used' => 'Choose from most used Tracks', ), );

register_taxonomy(‘wordup_tracks', array('wordup'), $dev_args);

}

The array(‘wordup’) is our custom post type

You can add moreLike Custom Fields

Questions?

Thank You!Nikhil Vimal@TechVoltz