Taxonomía personalizada como casilla de verificación o menú desplegable


Respuestas:


15

Probablemente no estableció el argumento 'jerárquico' en verdadero en su register_taxonomy. Esto significaría que su valor predeterminado es falso, lo que le brinda una interfaz similar a una etiqueta.

Añadir 'hierarchical' => truea su registro_taxonomía.


Oh si ... Gracias! PERO ¿Ahora sería posible cambiarlo a casilla de verificación o incluso seleccionar? Quiero poder poner esto como configuración en la configuración de mis complementos.
Julian F. Weinert

1
Cambiar jerárquico a verdadero debería cambiar la interfaz a casillas de verificación en su pantalla de edición para el CPT.
vancoder

Sí, pero quiero poder cambiar entre estas opciones. No creo que sea una buena práctica cambiar entre jerárquico y no. No cambia SOLO la interfaz, ¿estoy en lo cierto?
Julian F. Weinert

Bueno, jerárquico lo hace ... jerárquico :) No puedo cambiar entre las 2 interfaces que yo sepa.
Vancoder

Esta solución no crea una casilla de verificación ni un menú desplegable.
Dev

17

A partir de WP 3.7 ( https://core.trac.wordpress.org/ticket/14206 ) puede agregar este argumento a register_taxonomy:

'meta_box_cb' => 'post_categories_meta_box'

para obtener el metabox de estilo de categoría de casilla de verificación incorporado sin tener que hacer que su taxonomía sea jerárquica.

También podría proporcionar su propia función de devolución de llamada para crear su propio metabox (es decir, con un menú desplegable).


Genial, esto es exactamente lo que necesitaba sin tener que hacer que la taxonomía sea jerárquica. Gracias
Alexander Holsgrove

El problema con esto es que las taxonomías no jerárquicas y jerárquicas tienen una estructura de datos diferente que debe guardarse. Para saber cómo solucionar este problema, consulte aquí gist.github.com/gschoppe/…
P. Galbraith

Esta solución no crea una casilla de verificación ni un menú desplegable.
Dev

¡Esto es enorme! Gracias ... nunca supe que existía
Sam Holguin

-1

si desea cambiar el término del complemento existente a la casilla de verificación, debe editar el register_taxonomy () existente.

add_action( 'init', 'change_room_term_to_checkbox', 999);
function change_room_term_to_checkbox()
{
    $tax = get_taxonomy('roomtype');
    $tax->meta_box_cb = 'post_categories_meta_box';
    $tax->hierarchical = true;
}

'roomtype' es el nombre del término utilizado en register_taxonomy ('roomtype', array (.....

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.