Crear categoría solo para tipo de contenido personalizado
A todos, Estoy creando mi propio tipo de contenido usando el siguiente código:
add_action( 'init', 'create_team_post_type' );
function create_team_post_type() {
register_post_type( 'team',
array(
'labels' => array(
'name' => __( 'Equipos' ),
'singular_name' => __( 'Equipo' )
),
'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 esto estoy permitiendo una categoría. Cuando hago clic en la categoría para esto, veo las categorías ya listadas de mis categorías de entradas. Me gustaría mostrar solo las categorías para este tipo de contenido personalizado. Además, cuando agrego una nueva categoría al tipo de contenido personalizado, solo quiero que se aplique a este tipo de contenido personalizado. ¿Cómo puedo hacer esto?

Diría que también necesitas crear una taxonomía personalizada si quieres limitarla a un tipo de publicación específico. "Categorías" ya está conectado a las publicaciones por defecto.
Del WordPress Codex
function people_init() {
// crear una nueva taxonomía
register_taxonomy(
'people',
'post',
array(
'label' => __( 'Personas' ),
'rewrite' => array( 'slug' => 'persona' ),
'capabilities' => array(
'assign_terms' => 'edit_guides',
'edit_terms' => 'publish_guides'
)
)
);
}
add_action( 'init', 'people_init' );
Entonces, si la llamaras "team-category", deberías usarla en el array 'taxonomies' de tu tipo de publicación.
Aquí un ejemplo más específico:
function tr_create_my_taxonomy() {
register_taxonomy(
'team-category',
'team',
array(
'label' => __( 'Categoría' ),
'rewrite' => array( 'slug' => 'team-category' ),
'hierarchical' => true,
)
);
}
add_action( 'init', 'tr_create_my_taxonomy' );

Esto se ve bien. ¿Cómo muestro mi taxonomía personalizada en el post personalizado? Intenté cambiar 'taxonomies' => array('category')
por 'taxonomies' => array('people')
pero no muestra esas categorías.

Asegúrate de cambiar 'post' por 'team' en el código de ejemplo si es ahí donde quieres que aparezca.

Supongo que debería ser más claro. Aparece allí, pero cuando estoy agregando un nuevo post en el tipo de post personalizado, me gustaría que apareciera como casillas de verificación como en el tipo de post estándar. Ahora mismo solo me muestra un cuadro como las etiquetas en lugar de las categorías personalizadas.

Si lo deseas en 'estilo categoría', entonces establece hierarchical en true. El valor por defecto, false, lo muestra en 'estilo etiqueta'. He añadido el primero a mi último ejemplo de código.
