Obtener el 'slug' de una taxonomía personalizada

4 oct 2010, 03:39:28
Vistas: 13.8K
Votos: 4

Caso de uso:

Tengo un tipo de post personalizado 'show' para una sala de música. En la barra lateral queremos mostrar los 'show' relacionados al actual en single-show.php. Estarán relacionados mediante una taxonomía personalizada 'genre'. Pensé que podría guardar los slugs de las taxonomías personalizadas para un post (puede haber más de uno) en una variable y luego pasar esa variable a una consulta personalizada para los posts de la barra lateral.

Usar get_the_term_list() funciona si hay una sola taxonomía, pero si hay múltiples se rompe (claro).

¿Alguna idea sobre cómo obtener un array de los slugs de taxonomías personalizadas para un post dado y guardarlos en una variable?

0
Todas las respuestas a la pregunta 1
2

Puedes hacer algo como lo siguiente:

$terms = get_the_terms( $post->id, 'genre' ); // obtiene un array de todos los términos como objetos.

$terms_slugs = array();

foreach( $terms as $term ) {
    $terms_slugs[] = $term->slug; // guarda los slugs en un array
}
4 oct 2010 04:58:40
Comentarios

Me dio lo que quería. Desafortunadamente WordPress no soporta consultas para múltiples taxonomías personalizadas sin algunos trucos de SQL (LEFT JOIN...).

curtismchale curtismchale
4 oct 2010 20:15:04

En caso de que no lo sepas, hay un plugin para consultar múltiples taxonomías: http://wordpress.org/extend/plugins/query-multiple-taxonomies/

sorich87 sorich87
4 oct 2010 20:34:15