Créer une catégorie uniquement pour le type d'article personnalisé

4

Tous, Je crée mon propre type de publication à l'aide du code suivant:

add_action( 'init', 'create_team_post_type' );
function create_team_post_type() {
  register_post_type( 'team',
    array(
      'labels' => array(
        'name' => __( 'Teams' ),
        'singular_name' => __( 'Team' )
      ),
        'publicly_queryable' => true,
        'show_ui' => true,
        'query_var' => true,
        'rewrite' => true,
        'capability_type' => 'post',
        'hierarchical' => false,
        'menu_position' => null,
        'taxonomies' => array('category'),
        'supports' => array('title','editor','thumbnail')
    )
  );
}

En cela, j'autorise une catégorie. Lorsque je clique sur la catégorie pour cela, je vois les catégories déjà répertoriées dans mes catégories de messages. J'aimerais afficher uniquement les catégories de ce type d'article personnalisé. En outre, lorsque j'ajoute une nouvelle catégorie au type de publication personnalisé, je souhaite uniquement qu'elle s'applique à ce type de publication personnalisée. Comment puis-je faire cela?

    
posée user1048676 16.11.2014 - 20:51

1 réponse

5

Je dirais que vous devez également créer une taxonomie personnalisée si vous souhaitez qu'elle soit limitée au type de publication unique. "Catégories" est déjà connecté aux publications par défaut.

À partir du Codex WordPress

function people_init() {
    // create a new taxonomy
    register_taxonomy(
        'people',
        'post',
        array(
            'label' => __( 'People' ),
            'rewrite' => array( 'slug' => 'person' ),
            'capabilities' => array(
                'assign_terms' => 'edit_guides',
                'edit_terms' => 'publish_guides'
            )
        )
    );
}
add_action( 'init', 'people_init' );

Ainsi, si vous l'appeliez "catégorie-équipe", vous l'utiliseriez dans le tableau "taxonomies" de votre type de publication.

Voici un exemple plus spécifique:

function tr_create_my_taxonomy() {

    register_taxonomy(
        'team-category',
        'team',
        array(
            'label' => __( 'Category' ),
            'rewrite' => array( 'slug' => 'team-category' ),
            'hierarchical' => true,
        )
    );
}
add_action( 'init', 'tr_create_my_taxonomy' );
    
réponse donnée SkyShab 16.11.2014 - 21:09

Lire d'autres questions sur les étiquettes