I have created a theme with a custom post type called 'project' and there is a problem. I want to show 5 different custom post type categories on a page in different portions, like posts to show on pages from their respective categories. Is there any solution?
this is my custom post type code with custom texonomy
<?php
/**
* Registers a custom post type.
*
* @link http://codex.wordpress.org/Function_Reference/register_post_type
*/
function Project_post_type()
{
register_post_type(
'Project',
array(
'labels' => array(
'name' => __('Project', 'text_domain'),
'singular_name' => __('Project', 'text_domain'),
'menu_name' => __('Project', 'text_domain'),
'name_admin_bar' => __('Project Item', 'text_domain'),
'all_items' => __('All Items', 'text_domain'),
'add_new' => _x('Add New', 'prefix_portfolio', 'text_domain'),
'add_new_item' => __('Add New Item', 'text_domain'),
'edit_item' => __('Edit Item', 'text_domain'),
'new_item' => __('New Item', 'text_domain'),
'view_item' => __('View Item', 'text_domain'),
'search_items' => __('Search Items', 'text_domain'),
'not_found' => __('No items found.', 'text_domain'),
'not_found_in_trash' => __('No items found in Trash.', 'text_domain'),
'parent_item_colon' => __('Parent Items:', 'text_domain'),
),
'public' => true,
'menu_position' => 5,
'supports' => array(
'title',
'editor',
'thumbnail',
'excerpt',
'custom-fields',
),
'taxonomies' => array(
'Project_categories',
),
'menu_icon' => get_template_directory_uri() . '/img/project-icon.png',
'has_archive' => true,
'query_var' => true,
'rewrite' => array(
'slug' => 'Project',
),
)
);
}
add_action('init', 'Project_post_type');
/**
* Registers a custom taxonomy.
*
* @link http://codex.wordpress.org/Function_Reference/register_taxonomy
*/
function Project_taxonomy()
{
register_taxonomy(
'Project_categories',
array(
'Project',
),
array(
'labels' => array(
'name' => _x('Categories', 'prefix_portfolio', 'text_domain'),
'singular_name' => _x('Category', 'prefix_portfolio', 'text_domain'),
'menu_name' => __('Categories', 'text_domain'),
'all_items' => __('All Categories', 'text_domain'),
'edit_item' => __('Edit Category', 'text_domain'),
'view_item' => __('View Category', 'text_domain'),
'update_item' => __('Update Category', 'text_domain'),
'add_new_item' => __('Add New Category', 'text_domain'),
'new_item_name' => __('New Category Name', 'text_domain'),
'parent_item' => __('Parent Category', 'text_domain'),
'parent_item_colon' => __('Parent Category:', 'text_domain'),
'search_items' => __('Search Categories', 'text_domain'),
),
'show_admin_column' => true,
'hierarchical' => true,
'rewrite' => array(
'slug' => 'portfolio/category',
),
)
);
}
add_action('init', 'Project_taxonomy', 0);
function theme_prefix_rewrite_flush() {
flush_rewrite_rules();
}
add_action( 'after_switch_theme', 'theme_prefix_rewrite_flush' );
?>
Here is my code to display one category
$args = array(
'post_type' => 'project',
'posts_per_page' => 200,
'cat' => 'Initiatieffase'
);
$loop = new WP_Query($args); while ($loop->have_posts()) : $loop->the_post();
echo '<li><a href="' . the_permalink() . '">' . the_post_thumbnail() . '</a></li>';
endwhile;
wp_reset_query();