Esto proporciona una respuesta cuando la taxonomía no está disponible / se desconoce .
En mi caso, cuando usé get_term_by , hubo algunos casos en los que solo existía el término Slug (sin ID de término o taxonomía). Lo que me llevó hasta aquí. Sin embargo, la respuesta proporcionada no resolvió mi problema.
Solución para vaciar $taxonomy
// 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 );
Resultado
TheTerm ID is:32object(WP_Term)public'term_id'=>int32public'name'=>string'Example Term'public'slug'=>string'example-term'public'term_group'=>int0public'term_taxonomy_id'=>int123public'taxonomy'=>string'category'public'description'=>string''public'parent'=>int0public'count'=>int23public'filter'=>string'raw'
De la siguiente manera, el concepto obtiene una matriz de $taxonomies, recorre la matriz, y si IF get_term_by()devuelve una coincidencia, se rompe inmediatamente 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.
Creé una función y la uso una y otra vez según sea necesario.
function helper_get_taxonomy__by_slug($term_slug){
$term_object ="";
$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;}else{
$term_object ="Warn! Helper taxonomy not found.";}}return $term_object;}
Respuestas:
La función que estás buscando es
get_term_by
. Lo usarías como tal:Esto da como resultado
$term
un objeto que contiene lo siguiente:El códice hace un gran trabajo al explicar esta función: http://codex.wordpress.org/Function_Reference/get_term_by
fuente
Esto proporciona una respuesta cuando la taxonomía no está disponible / se desconoce .
En mi caso, cuando usé get_term_by , hubo algunos casos en los que solo existía el término Slug (sin ID de término o taxonomía). Lo que me llevó hasta aquí. Sin embargo, la respuesta proporcionada no resolvió mi problema.
Solución para vaciar
$taxonomy
Resultado
De la siguiente manera, el concepto obtiene una matriz de
$taxonomies
, recorre la matriz, y si IFget_term_by()
devuelve una coincidencia, se rompe inmediatamente 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.
fuente
Gracias, esto funcionó para mí.
Creé una función y la uso una y otra vez según sea necesario.
fuente