get_the_term_list sin enlaces en 3.1

13

¿Qué función mostrará las taxonomías personalizadas asociadas con una publicación como texto?

Actualmente estoy usando get_the_term_list, que funciona muy bien para una página en particular, pero no tanto cuando uso una taxonomía en la etiqueta de título del enlace permanente de archive-postype.php.

m-torin
fuente

Respuestas:

15

wp_get_object_terms () devuelve los términos asociados con un objeto (por ejemplo, una publicación o una página o publicación personalizada) como texto (normalmente en una matriz).

Desde la página del Codex para wp_get_object_terms ()

$productcategories = wp_get_object_terms($post->ID, 'productcategories');

anu
fuente
Tenga en cuenta que los resultados de la consulta no se almacenan en caché get_the_terms(). Consulte la página del códice para obtener información.
Dylan
22

Sin embargo, @anu tiene razón, descubrí que puede llamar a la función php strip_tags para quitar las etiquetas del valor de retorno.

$terms = get_the_term_list( $post->ID, 'tags' );
$terms = strip_tags( $terms );
Zack
fuente
Parece tan simple y hace el trabajo. ¿Hay alguna desventaja al usar esto?
Mohsin
@Mohsin Una desventaja es que elimina todas las etiquetas, no solo la etiqueta <a>. Sin embargo, puede evitar que se eliminen las etiquetas deseadas, de esta manera:$terms = strip_tags( $terms, '<li>' );
David
0

Necesito lo mismo y probé la solución de Zack que funciona muy bien. Por ejemplo, si solo necesita el término para poner en css id o class. Solo una anotación sobre la solución, la función está mal llamada, correctamente es "get_the_term_list".

Les muestro mi ejemplo:

$terms = get_the_term_list( $post->ID, 'your_taxonomy_name' );
$terms = strip_tags( $terms );
Wordpress principiante
fuente
0
$terms = wp_list_pluck( get_the_terms( get_the_ID(), 'your_taxonomy' ), 'name');

Aquí $ terms es una matriz, por lo que puede usar un bucle foreach.

foreach( $terms as $term ) {
  echo $term;
}
Razor Khan
fuente