it-swarm.com.de

get_the_terms gibt nur den letzten Ausdruck zurück

In meinem benutzerdefinierten Beitragstyp (portfolio_pt) habe ich eine hierarchische Kategoriestruktur, die ungefähr so ​​aussieht:

ParentCat
|-child
    |-someItem
ParentCat2
|-cild
...

Wenn ich versuche, eine Liste aller Begriffe mit der Funktion get_the_terms für "someItem" zu erhalten, wird in dieser Funktion nur die letzte Kategorie zurückgegeben ("Child Cat" ohne "Parent Cat"). Beispiel:

global $post;
$terms = get_the_terms( $post->ID, 'portfolio_pt_category' );

Ich versuche, die Funktion get_the_term_list zu verwenden, aber der Effekt ist derselbe. Sie gibt nur die letzte Kategorie zurück.

Danke für die Hilfe!

1

Versuchen Sie, anstelle von get_the_termsget_terms zu verwenden, und setzen Sie das hierarchische Argument auf true. Stellen Sie außerdem sicher, dass Sie leer anzeigen, damit Ihre leeren Kategorien nicht ausgeblendet werden.

Versuchen Sie so etwas:

$args = array(
'hide_empty'    => false,
'hierarchical'    => true
); 
$terms = get_terms('portfolio_pt', $args);

foreach($terms as $term)
    echo $term->name;
2
campatsky