Cómo obtener una lista de IDs de hijos para una categoría específica

12 ene 2011, 19:45:30
Vistas: 1.26K
Votos: 0

Creo que podría hacer esto con get_categories() o wp_list_categories() pasando un parámetro 'child_of', por ejemplo, pero eso devolvería un conjunto de datos mucho más grande de lo que necesito.

¿Existe alguna llamada directa que devuelva los IDs de hijos para cualquier categoría como una lista simple (1,2,3,5, etc)?

0
Todas las respuestas a la pregunta 1
8

Prueba esto:

get_terms( 'category', "child_of=$parent&fields=ids" );
// debería devolver un array que contenga los IDs de los hijos del término $parent
12 ene 2011 19:51:37
Comentarios

@goldenapples: ¿Esto es correcto? var_dump(get_terms('category', "child_of=1&fields=ids" ))? (devuelve array(0) { })

Scott B Scott B
12 ene 2011 19:58:05

Me parece correcto, ¿hay hijos para recuperar? ¿Y no están vacíos? Mira los argumentos disponibles aquí: http://core.trac.wordpress.org/browser/tags/3.0.4/wp-includes/taxonomy.php#L721

goldenapples goldenapples
12 ene 2011 20:05:31

solo agrega 'show_empty=true' al segundo parámetro, creo.

sanchothefat sanchothefat
12 ene 2011 20:07:34

En realidad, creo que el problema es que estoy pasando $parent con el id de categoría, no el term_id. Pero, ¿no deberían ser lo mismo? Estoy intentando listar todos los hijos de la categoría sin categorizar, que tiene el tag_ID 1.

Scott B Scott B
12 ene 2011 20:07:37

¿Qué tal si pruebas con get_term_children(1,'category')?

Scott B Scott B
12 ene 2011 20:21:55

Sí, el ID de categoría debería ser el mismo que su term ID. Estás obteniendo una respuesta sin errores, así que la sintaxis es correcta. Prueba eliminando el argumento child_of y mira qué obtienes...

goldenapples goldenapples
12 ene 2011 20:22:21

get_term_children debería funcionar, pero aún así devolverá todos los objetos, que es lo que pensé que no querías. get_terms tiene el parámetro "fields", por lo que podrías devolver solo los ids.

goldenapples goldenapples
12 ene 2011 20:30:50

@GA, encontré el problema. Anteriormente había configurado un filtro list_terms_exclusions que excluía a los hijos de "uncategorized" del conjunto de resultados.

Scott B Scott B
12 ene 2011 20:38:01
Mostrar los 3 comentarios restantes