Utilizarea corectă a funcției get_the_terms()
Am nevoie să afișez toți termenii asociați unui post de tip custom post type. În template-ul postării am scris acest cod:
<?php foreach (get_the_terms(the_ID(), 'taxonomy') as $cat) : ?>
<?php echo $cat->name; ?>
<?php endforeach; ?>
Loop-ul funcționează corect, dar înainte de listă este afișat și ID-ul. Astfel:
37
taxonomy01
taxonomy02
taxonomy03
Ce este greșit?
the_ID() afișează ID-ul articolului. Pentru a obține ID-ul articolului, trebuie să folosiți get_the_ID() care returnează ID-ul.
Exemplu:
foreach (get_the_terms(get_the_ID(), 'taxonomy') as $cat) {
echo $cat->name;
}
Țineți minte întotdeauna convenția de denumire din WordPress pentru tag-urile de șablon. the înseamnă afișare, iar get înseamnă returnare în majoritatea cazurilor.
Ține minte întotdeauna convenția de denumire din WordPress pentru tag-urile de șablon. the înseamnă afișare, get înseamnă returnare WordPress nu respectă întotdeauna aceste reguli. Tag-urile de șablon nu folosesc întotdeauna prefixele the și get
Pieter Goosen