Como la respuesta aceptada no responde a la pregunta, que proporcionan una respuesta aquí a pesar de que la cuestión es muy antigua.
El tercer argumento (obligatorio) para get_term_by()
es el nombre de la propia taxonomía, por lo que esta función no se puede utilizar.
get_taxonomies()
no se puede utilizar porque entonces tendría que coincidir con toda la matriz de reescritura, a la que probablemente no tenga acceso.
Así que la única manera que encontré fue utilizar la matriz privada $wp_taxonomies
:
function get_tax_name_from_slug($slug){
foreach ($wp_taxonomies as $key => $value) {
if ($value->rewrite['slug'] === $slug){
return $key;
}
}
}
Realmente espero Wordpress proporcionará una manera de hacer esto sin tener acceso a sus estructuras de datos internas.
esto no responde a la pregunta. Solo encontrará el nombre de un término, no una taxonomía. – David