W przyjętym odpowiedź nie jest odpowiedź na pytanie, mogę udzielić odpowiedzi tutaj chociaż kwestia jest bardzo stary.
Trzecim (wymaganym) argumentem dla get_term_by()
jest nazwa samej taksonomii, więc funkcja ta nie może być używana. Nie można również użyć
get_taxonomies()
, ponieważ wtedy musiałbyś dopasować całą tablicę do przepisywania, do której prawdopodobnie nie masz dostępu.
Więc jedynym sposobem znalazłem było korzystać z prywatnej tablicę $wp_taxonomies
:
function get_tax_name_from_slug($slug){
foreach ($wp_taxonomies as $key => $value) {
if ($value->rewrite['slug'] === $slug){
return $key;
}
}
}
mam nadzieję Wordpress zapewni sposób to zrobić bez dostępu do swoich wewnętrznych struktur danych.
To nie jest odpowiedź na pytanie. Znajdzie tylko nazwę terminu, a nie taksonomię. – David