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

7 ago 2013, 20:34:39
Vistas: 35.5K
Votos: 15

He registrado una taxonomía personalizada para mi CPT. En la pantalla de edición, el campo meta de la taxonomía aparece con un campo de autocompletado.

¿Es posible mostrarla como casillas de verificación o menú desplegable en su lugar?

0
Todas las respuestas a la pregunta 3
7
25

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

'meta_box_cb' => 'post_categories_meta_box'

para obtener el metabox estilo checkbox de categorías incorporado sin necesidad de hacer tu taxonomía jerárquica.

También podrías en su lugar proporcionar tu propia función callback para crear tu propio metabox (por ejemplo con un dropdown).

16 jun 2016 00:34:29
Comentarios

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

Alexander Holsgrove Alexander Holsgrove
29 dic 2016 23:20:35

El problema con esto es que las taxonomías no jerárquicas y jerárquicas tienen una estructura de datos diferente que necesita guardarse. Para ver cómo solucionar este problema, consulta aquí https://gist.github.com/gschoppe/29ba81a1f676d7802cb8#file-cat-like-custom-taxonomy-php

P. Galbraith P. Galbraith
27 feb 2017 08:18:32

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

Brad Dalton Brad Dalton
12 sept 2017 12:28:59

¡Esto es enorme! Gracias... Nunca supe que existía

Sam Holguin Sam Holguin
10 feb 2019 22:00:55

¿Dónde cambio la información como sugiere Justin Fowell? Perdón si esto es muy obvio para todos, recién estoy aprendiendo. Emily

Emily Wilding Emily Wilding
23 jun 2021 14:43:47

En la llamada register_taxonomy() que tienes para tu taxonomía personalizada. ¿Cómo estás configurando la taxonomía?

Rup Rup
23 jun 2021 17:57:26

¿Esto ya no funciona? Lo configuré como en tu ejemplo, pero no veo un campo de selección.

Loosie94 Loosie94
11 ene 2022 17:07:36
Mostrar los 2 comentarios restantes
5
23

Probablemente no configuraste el argumento 'hierarchical' como verdadero en tu register_taxonomy. Esto significa que por defecto es falso, lo que te da una interfaz similar a etiquetas.

Añade 'hierarchical' => true a tu register_taxonomy.

7 ago 2013 20:37:48
Comentarios

¡Ah sí... Gracias! PERO ¿Sería posible ahora cambiarlo a checkbox o incluso a select? Quiero poder poner esto como configuración en los ajustes de mis plugins.

Julian F. Weinert Julian F. Weinert
7 ago 2013 20:51:25

Cambiar hierarchical a true debería cambiar la interfaz a checkboxes en tu pantalla de edición para el CPT.

vancoder vancoder
7 ago 2013 21:06:24

Sí, lo hace – pero quiero poder alternar entre estas opciones. No creo que sea una buena práctica cambiar entre jerárquico y no. No cambia SOLO la interfaz, ¿verdad?

Julian F. Weinert Julian F. Weinert
7 ago 2013 21:09:00

Bueno, jerárquico lo hace... jerárquico :) Hasta donde sé, no puedes alternar entre las 2 interfaces.

vancoder vancoder
7 ago 2013 21:33:32

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

Brad Dalton Brad Dalton
12 sept 2017 12:28:47
0
-1

Si deseas cambiar el término de un plugin existente a casillas de verificación (checkbox), necesitas editar el register_taxonomy() existente.

add_action( 'init', 'cambiar_termino_habitacion_a_checkbox', 999);
function cambiar_termino_habitacion_a_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(.....

29 mar 2017 11:34:00