Query Custom Post Type by Catergory
-
Wrote a custom post type
if ( ! function_exists(‘encounters_news_cpt’) ) {
// Register News Custom Post Type
function encounters_news_cpt() {
$labels = array(
‘name’ => _x( ‘News’, ‘Post Type General Name’, ‘encounters’ ),
‘singular_name’ => _x( ‘New’, ‘Post Type Singular Name’, ‘encounters’ ),
‘menu_name’ => __( ‘News’, ‘encounters’ ),
‘name_admin_bar’ => __( ‘News’, ‘encounters’ ),
‘parent_item_colon’ => __( ‘Parent New:’, ‘encounters’ ),
‘all_items’ => __( ‘All News’, ‘encounters’ ),
‘add_new_item’ => __( ‘Add News’, ‘encounters’ ),
‘add_new’ => __( ‘Add News’, ‘encounters’ ),
‘new_item’ => __( ‘New News’, ‘encounters’ ),
‘edit_item’ => __( ‘Edit News’, ‘encounters’ ),
‘update_item’ => __( ‘Update News’, ‘encounters’ ),
‘view_item’ => __( ‘View News’, ‘encounters’ ),
‘search_items’ => __( ‘Search News’, ‘encounters’ ),
‘not_found’ => __( ‘Not found’, ‘encounters’ ),
‘not_found_in_trash’ => __( ‘Not found in Trash’, ‘encounters’ ),
);
$rewrite = array(
‘slug’ => ‘encounters-news’,
‘with_front’ => true,
‘pages’ => false,
‘feeds’ => true,
);
$args = array(
‘label’ => __( ‘encounters_news’, ‘encounters’ ),
‘description’ => __( ‘News’, ‘encounters’ ),
‘labels’ => $labels,
‘supports’ => array( ‘title’, ‘editor’, ‘author’, ‘thumbnail’, ‘revisions’ ),
‘hierarchical’ => false,
‘public’ => true,
‘show_ui’ => true,
‘show_in_menu’ => true,
‘menu_position’ => 5,
‘menu_icon’ => ‘dashicons-admin-users’,
‘show_in_admin_bar’ => true,
‘show_in_nav_menus’ => true,
‘can_export’ => true,
‘has_archive’ => ‘encounters-news’,
‘exclude_from_search’ => false,
‘publicly_queryable’ => true,
‘query_var’ => ‘encounters-news’,
‘rewrite’ => $rewrite,
‘capability_type’ => ‘page’,
);
register_post_type( ‘encounters_news’, $args );
}
// Hook into the ‘init’ action
add_action( ‘init’, ‘encounters_news_cpt’, 0 );
}
if ( ! function_exists( ‘encounters_news_categories’ ) ) {
// Register Custom Taxonomy
function encounters_news_categories() {
$labels = array(
‘name’ => _x( ‘News Categories’, ‘Taxonomy General Name’, ‘encounters’ ),
‘singular_name’ => _x( ‘News Category’, ‘Taxonomy Singular Name’, ‘encounters’ ),
‘menu_name’ => __( ‘News Categories’, ‘encounters’ ),
‘all_items’ => __( ‘All News Categories’, ‘encounters’ ),
‘parent_item’ => __( ‘Parent News Categories’, ‘encounters’ ),
‘parent_item_colon’ => __( ‘Parent News Categories:’, ‘encounters’ ),
‘new_item_name’ => __( ‘New Item News Categories’, ‘encounters’ ),
‘add_new_item’ => __( ‘Add New News Category’, ‘encounters’ ),
‘edit_item’ => __( ‘Edit News Category’, ‘encounters’ ),
‘update_item’ => __( ‘Update News Category’, ‘encounters’ ),
‘view_item’ => __( ‘View News Category’, ‘encounters’ ),
‘separate_items_with_commas’ => __( ‘Separate items with commas’, ‘encounters’ ),
‘add_or_remove_items’ => __( ‘Add or remove News’, ‘encounters’ ),
‘choose_from_most_used’ => __( ‘Choose from the most used’, ‘encounters’ ),
‘popular_items’ => __( ‘Popular News Categories’, ‘encounters’ ),
‘search_items’ => __( ‘Search News Categories’, ‘encounters’ ),
‘not_found’ => __( ‘Not Found’, ‘encounters’ ),
);
$rewrite = array(
‘slug’ => ‘encounters-news_categories’,
‘with_front’ => true,
‘hierarchical’ => true,
);
$args = array(
‘labels’ => $labels,
‘hierarchical’ => true,
‘public’ => true,
‘show_ui’ => true,
‘show_admin_column’ => true,
‘show_in_nav_menus’ => true,
‘show_tagcloud’ => true,
‘query_var’ => ‘encounters_news_categories’,
‘rewrite’ => $rewrite,
);
register_taxonomy( ‘encounters_news_categories’, array( ‘encounters_news’ ), $args );
}
// Hook into the ‘init’ action
add_action( ‘init’, ‘encounters_news_categories’, 0 );
}Able to query and display all posts from the custom post type to a page using
<?php query_posts(‘post_type=encounters_news’); while (have_posts()) : the_post(); ?>
<?php get_template_part( ‘content-news’, ‘page’ ); ?>
<?php //comments_template( ”, true ); ?>
<?php endwhile; wp_reset_query(); ?>
<?php encounters_content_nav( ‘post-nav’ ); ?>But I am unable to query and display just one category from the custom post. Have tried several variations of the code below.
<?php query_posts(‘post_type=encounters_news&cat=17’); while (have_posts()) : the_post(); ?>
<?php get_template_part( ‘content-news’, ‘page’ ); ?>
<?php //comments_template( ”, true ); ?>
<?php endwhile; wp_reset_query(); ?>
<?php encounters_content_nav( ‘post-nav’ ); ?>Any suggestions?
The topic ‘Query Custom Post Type by Catergory’ is closed to new replies.