web-dev-qa-db-fra.com

Les archives de catégorie et d’étiquette de publication n’incluent pas les publications de type publication personnalisée.

Mon type de message personnalisé est configuré pour utiliser les taxonomies category et post_tag. Les catégories et les tags s’affichent correctement dans l’administrateur et semblent fonctionner comme prévu. Les catégories s'affichent également correctement dans l'interface utilisateur. Toutefois, lorsque je clique sur un nom de catégorie dans l'interface utilisateur, le modèle de catégorie s'affiche, mais la boucle WordPress ne contient aucune publication, même si je peux vérifier que plusieurs publications sont associées à cette catégorie.

Peut-être que mon type de message personnalisé doit être configuré différemment?

function create_newz() {
  $labels = array(
    'name'                => 'The Newz',
    'singular_name'       => 'Newz Item',
    'menu_name'           => 'Newz',
    'name_admin_bar'      => 'Newz',
    'add_new'             => 'Add Newz Item',
    'add_new_item'        => 'Add Newz',
    'new_item'            => 'New Newz Item',
    'edit_item'           => 'Edit Newz Item',
    'view_item'           => 'View Newz Item',
    'all_items'           => 'All Newz Items',
    'search_items'        => 'Search Newz',
    'parent_item_colon'   => 'Parent Newz:',
    'not_found'           => 'No Newz Items found.',
    'not_found_in_trash'  => 'No Newz Items found in Trash.'
  );

  $args = array(
    'labels'              => $labels,
    'public'              => true,
    'publicly_queryable'  => true,
    'show_ui'             => true,
    'show_in_menu'        => true,
    'menu_position'       => 5,
    'menu_icon'           => 'dashicons-id-alt',
    'query_var'           => true,
    'rewrite'             => array('slug' => 'newz'),
    'capability_type'     => 'post',
    'has_archive'         => true,
    'hierachical'         => false,
    'supports'            => array('title','editor', 'custom-fields', 'thumbnail'),
    'taxonomies' => array('category', 'post_tag')
  );
  register_post_type('newz', $args);

}
2
Mark Salvatore

Par défaut, WordPress inclura uniquement le type de message post dans les archives de taxonomie post_tag et category.

Utilisez cet extrait pour ajouter des articles newz aux archives de taxonomie post_tag et category:

add_filter( 'pre_get_posts', 'wpse_newz_taxonomy_archives' );
function wpse_newz_taxonomy_archives( $query ) {
  if ( $query->is_main_query() && ( is_category() || is_tag() ) ) {
        $query->set( 'post_type', array( 'post', 'newz' ) );
  }
}
2
Dave Romsey