I'm having trouble displaying the post taxonomy terms as classes. I know I've done it in the past, but I can't seem to find it and don't remember how to do it.
I have a custom taxonomy 'thema', now I want to add the corresponding theme term as classes to every post on the archive page.
I can list all the terms for a post, but when I want to output it as classes, the page stop loading from the point where the post loop starts.
This is what I have so far:
(EDIT: changed some code to show when the error occurs)
while ( $query->have_posts() ) {
$query->the_post();
$f = get_fields();
$link = ($f['bericht_doorverwijzen'] ?? '' ? $f['bericht_doorverwijzen'] : get_the_permalink());
$terms = wp_get_post_terms( get_the_ID(), 'thema');
echo "<div class='post ". foreach ($terms as $t) { echo $t->slug, ' '; } ."'>";
echo "<div class='postWrapper'>";
echo "<div class='content'>";
echo "<h2><a href='".$link."' title='Ga naar ".get_the_title()."'>".get_the_title()."</a></h2>";
echo the_excerpt_max_charlength($charlength = 130);
echo "<a href='".$link."' title='Ga naar ".get_the_title()."' class='link'>Lees meer</a>";
echo "</div>";
echo "</div>";
echo "</div>";
}
You can try this way:
$classes = '';
$terms = wp_get_post_terms( get_the_ID(), 'thema');
foreach($terms as $t) {
$classes .= $t->slug . ' ';
}
echo "<div class='post ". $classes ."'>";
It's should work. Hope help you.