Ottenere la categoria genitore principale
La mia struttura di categorie è la seguente:
- Categoria Principale
---- Sottocategoria 1
------- Sotto-sottocategoria 1.1
------- Sotto-sottocategoria 1.2
------- Sotto-sottocategoria 1.3
---- Sottocategoria 2
------- Sotto-sottocategoria 2.1
------- Sotto-sottocategoria 2.2
------- Sotto-sottocategoria 2.3
Mi trovo in un post sotto 1.2 quindi sarebbe:
Categoria Principale -> Sottocategoria 1 -> Sotto-sottocategoria 1.2 -> Post corrente
NB: Nel post SONO selezionate SOLO "Sottocategoria 1" e "Sotto-sottocategoria 1.2" come categorie ("Categoria Principale" non è selezionata).
Ora, come posso ottenere lo slug della Categoria Principale ("categoria-principale"), navigando all'indietro?
Grazie!

get_ancestors()
restituisce un array contenente i genitori di un qualsiasi oggetto dato.
Questo esempio ha due categorie. Il genitore con ID 447 e il figlio con ID 448 e restituisce una gerarchia di categorie (con ID):
get_ancestors( 448, 'category' );
restituisce:
Array
(
[0] => 447
)
Pagina Codex di get_ancestors

È il modo corretto per ottenere tutte le categorie genitore di una specifica categoria nell'ordine gerarchico, quindi per ottenere il genitore di livello più alto puoi estrarre l'ultimo elemento dell'array restituito in questo modo:
// ottenere tutti gli antenati delle categorie
$ancestor_cat_ids = get_ancestors( $queried_cat_id, 'category');
// ottenere l'ultimo elemento dell'array di ID restituito dalla funzione get_ancestors()
$highest_ancestor = $ancestor_cat_ids[count($ancestor_cat_ids) - 1];
