Si conozco una babosa de término de taxonomía, ¿cómo puedo obtener el nombre de ese término?
Si conozco una babosa de término de taxonomía, ¿cómo puedo obtener el nombre de ese término?
La función que está buscando es get_term_by
. Lo utilizarías como tal:
<?php $term = get_term_by('slug', 'my-term-slug', 'category'); $name = $term->name; ?>
Esto hace que $term
sea un objeto que contiene lo siguiente:
term_id
name
slug
term_group
term_taxonomy_id
taxonomy
description
parent
count
El códice hace un gran trabajo explicando esta función: enlace
Esto proporciona una respuesta cuando la taxonomía no está disponible / desconocida .
En mi caso, cuando utilizo get_term_by , hubo algunos casos en los que solo existía el Slug de términos o Taxonomía). Lo que me llevó aquí. Sin embargo, la respuesta proporcionada no resolvió por completo mi problema.
$taxonomy
vacío
// We want to find the ID to this slug.
$term_slug = 'foo-bar';
$taxonomies = get_taxonomies();
foreach ( $taxonomies as $tax_type_key => $taxonomy ) {
// If term object is returned, break out of loop. (Returns false if there's no object)
if ( $term_object = get_term_by( 'slug', $term_slug , $taxonomy ) ) {
break;
}
}
$term_id = $term_object->name;
echo 'The Term ID is: ' . $term_id . '<br>';
var_dump( $term_object );
The Term ID is: 32
object(WP_Term)
public 'term_id' => int 32
public 'name' => string 'Example Term'
public 'slug' => string 'example-term'
public 'term_group' => int 0
public 'term_taxonomy_id' => int 123
public 'taxonomy' => string 'category'
public 'description' => string ''
public 'parent' => int 0
public 'count' => int 23
public 'filter' => string 'raw'
De la siguiente manera, el concepto obtiene una matriz de $taxonomies
, realiza un bucle a través de la matriz, y si IF get_term_by()
devuelve una coincidencia, inmediatamente se sale del bucle foreach.
Nota: Intenté buscar un método para obtener la taxonomía asociada (ID o Slug) de Term Slug, pero desafortunadamente no puedo encontrar nada disponible en WordPress.