WordPress is a powerful and flexible content management system (CMS) that allows you to create various types of content with ease. While the default post types (posts and pages) are sufficient for most websites, there are times when you may want to create custom post types to better organize your content. In this tutorial, we’ll show you how to create custom post types with taxonomy code in WordPress without using a plugin.
Step 1: Define the Custom Post Type
To create a custom post type, you need to define it using the register_post_type() function. Here’s an example code snippet that creates a custom post type called “Books”:
function custom_post_type_books() { $labels = array( 'name' => 'Books', 'singular_name' => 'Book', 'menu_name' => 'Books', 'add_new_item' => 'Add New Book', 'edit_item' => 'Edit Book', 'new_item' => 'New Book', 'view_item' => 'View Book', 'search_items' => 'Search Books', 'not_found' => 'No books found', 'not_found_in_trash' => 'No books found in trash', ); $args = array( 'labels' => $labels, 'public' => true, 'has_archive' => true, 'rewrite' => array('slug' => 'books'), 'supports' => array('title', 'editor', 'thumbnail'), ); register_post_type('books', $args); } add_action('init', 'custom_post_type_books');
This code creates a custom post type called “Books” with some default labels and arguments. You can customize the labels and arguments as per your requirements.
Step 2: Define the Taxonomy
Taxonomies are used to group and organize your custom post types. To create a taxonomy, you need to use the register_taxonomy() function. Here’s an example code snippet that creates a taxonomy called “Genres” for the “Books” custom post type:
function custom_taxonomy_genres() { $labels = array( 'name' => 'Genres', 'singular_name' => 'Genre', 'menu_name' => 'Genres', 'all_items' => 'All Genres', 'edit_item' => 'Edit Genre', 'view_item' => 'View Genre', 'update_item' => 'Update Genre', 'add_new_item' => 'Add New Genre', 'new_item_name' => 'New Genre Name', 'search_items' => 'Search Genres', ); $args = array( 'labels' => $labels, 'hierarchical' => true, 'rewrite' => array('slug' => 'genres'), ); register_taxonomy('genres', 'books', $args); } add_action('init', 'custom_taxonomy_genres');
This code creates a taxonomy called “Genres” for the “Books” custom post type with some default labels and arguments. You can customize the labels and arguments as per your requirements.
Step 3: Use the Custom Post Type and Taxonomy
Once you have defined the custom post type and taxonomy, you can use them in your WordPress website. You can create new posts under the “Books” custom post type and assign them to different “Genres” taxonomies.
Conclusion
Creating custom post types with taxonomy code in WordPress is not as difficult as it seems. By following the above steps, you can create custom post types and taxonomies without