Skip to main content
edited title
Link
fuxia
  • 107.1k
  • 38
  • 255
  • 459

wordpress - query Query custom post type by category slug

Source Link

wordpress - query custom post type by category slug

I'm trying to query a custom post type by its category slug, but its not working at all

my custom post type definitions:

add_action( 'init', 'custom_post_albuns' );
 
// The custom function to register a movie post type
function custom_post_albuns() {
 
  // Set the labels, this variable is used in the $args array
  $labels = array(
    'name'               => __( 'Albuns' ),
    'singular_name'      => __( 'Album' ),
    'add_new'            => __( 'Add New Album' ),
    'add_new_item'       => __( 'Add New Album' ),
    'edit_item'          => __( 'Edit Album' ),
    'new_item'           => __( 'New Album' ),
    'all_items'          => __( 'All Albuns' ),
    'view_item'          => __( 'View Album' ),
    'search_items'       => __( 'Search Albuns' ),
    'featured_image'     => 'Featured Image',
    'set_featured_image' => 'Add Featured Image'
  );
 
  // The arguments for our post type, to be entered as parameter 2 of register_post_type()
  $args = array(
    'labels'            => $labels,
    'description'       => 'm6 Records Albuns',
    'public'            => true,
    'menu_position'     => 6,
    'supports'          => array( 'title', 'editor', 'thumbnail', 'excerpt', 'comments', 'custom-fields' ),
    'has_archive'       => true,
    'show_in_admin_bar' => true,
    'show_in_nav_menus' => true,
    'has_archive'       => true,
    'menu_icon'         => 'dashicons-album',
    'query_var'         => 'album'
  );
 
  // Call the actual WordPress function
  // Parameter 1 is a name for the post type
  // Parameter 2 is the $args array
  register_post_type( 'album', $args);
}

add_action( 'init', 'create_album_taxonomies', 0 );

function create_album_taxonomies() {
    $labels = array(
        'name'              => _x( 'Categories', 'taxonomy general name' ),
        'singular_name'     => _x( 'Category', 'taxonomy singular name' ),
        'search_items'      => __( 'Search Categories' ),
        'all_items'         => __( 'All Categories' ),
        'parent_item'       => __( 'Parent Category' ),
        'parent_item_colon' => __( 'Parent Category:' ),
        'edit_item'         => __( 'Edit Category' ),
        'update_item'       => __( 'Update Category' ),
        'add_new_item'      => __( 'Add New Category' ),
        'new_item_name'     => __( 'New Category Name' ),
        'menu_name'         => __( 'Categories' ),
    );

    $args = array(
        'hierarchical'      => true, // Set this to 'false' for non-hierarchical taxonomy (like tags)
        'labels'            => $labels,
        'show_ui'           => true,
        'show_admin_column' => true,
        'query_var'         => true,
        'rewrite'           => array( 'slug' => 'albuns' ),
    );

    register_taxonomy( 'albuns_categories', array( 'album' ), $args );
}

and my query:

$argsPost = array(
                    'post_type'=>'album', 
                    'orderby'=>'date',
                    'order'   => 'DESC',
                    'posts_per_page'=>'4',
                    'tax_query' => array(
                        array(
                            'taxonomy' => 'albuns_categories',
                            'field' => 'slug', 
                            'terms' => array( 'ANYTERM' ) 
                        )
                    )
                  );

and I can't bring a list of albuns (if I remove the tax_query part, it returns to me all the "albuns" custom post type)

Thanks!!