我正在尝试突出显示一个菜单项,具体取决于它是否在当前页面上。下面的代码目前突出显示每个菜单项,因为它在foreach循环中。如果它在特定的页面ID上,并且仅在该术语(不是每个术语)上,我如何突出显示分类术语?
<?php $args = array( 'taxonomy' => 'blog' );
$terms = get_terms('blog', $args);
$count = count($terms); $i=0;
if ($count > 0) {
$cape_list = '<p class="my_term-archive">';
echo $postid;
foreach ($terms as $term) {
$i++;
$absolute = get_bloginfo('url');
$postid = get_the_ID();
if($postid == "561") {
$term_list .= '<a class="menu-active" style="padding-left:30px;width:88%!IMPORTANT;" href="' . $absolute . '/blog/' . $term->slug . '" title="' . sprintf(__('View all post filed under %s', 'my_localization_domain'), $term->name) . '">' . $term->name . '</a>';
} else {
$term_list .= '<a style="padding-left:30px;width:88%!IMPORTANT;" href="' . $absolute . '/blog/' . $term->slug . '" title="' . sprintf(__('View all post filed under %s', 'my_localization_domain'), $term->name) . '">' . $term->name . '</a>';
} } ?>
<?php echo $term_list; } ?>
答案 0 :(得分:1)
您必须查询属于当前页面的分类术语,并在foreach循环中比较它们的id。
get_the_ID()
函数返回当前帖子的id,而不是当前的分类。
以下是wordpress相关问题的链接,其中显示了如何查询当前的分类术语: