使用GET_TAG()突出显示当前标记

时间:2013-08-11 作者:Osu

我已经差不多做到了,但我需要突出显示当前正在查看的标记链接/存档:

<ul id="blog-tags">
            <?php 
            $tags = get_tags();
            if ($tags) {
                foreach ($tags as $tag) {
                    echo \'<li><a href="\' . get_tag_link( $tag->term_id ) . \'" title="\' . sprintf( __( "View all posts in %s" ), $tag->name ) . \'" \' . \'>\' . $tag->name.\'</a></li>\';
                }
            }
             ?>
        </ul>
我想申请<li class="active-tag"> 到上面代码中包含活动标记的列表项-有人可以帮我吗?

非常感谢

Osu

1 个回复
最合适的回答,由SO网友:fuxia 整理而成

比较$tag->term_id 值来自get_queried_object_id(). 您必须将前者转换为整数,因为它是作为字符串提供的,没有充分的理由。

<ul id="blog-tags">
<?php
$tags = get_tags();
if ( $tags ) {
    foreach ( $tags as $tag ) {
        echo \'<li>\';

        if ( (int) $tag->term_id === get_queried_object_id() )
            echo "<b>$tag->name</b>";
        else
            printf(
                \'<a href="%1$s">%2$s</a>\',
                get_tag_link( $tag->term_id ),
                $tag->name
            );

        echo \'</li>\';
    }
}
?>
</ul>

结束

相关推荐

在editags.php中使用多个id过滤分类术语

我想使用编辑标签。具有多个术语id的php搜索函数。例如,如果我在搜索框中键入以下内容:#1245&;6832,它应该在结果表(WP\\U terms\\U List\\U table)中显示这两个术语。我尝试使用pre\\u get\\u posts操作访问正在运行的搜索查询,但这只是显示一个“空”查询:add_action(\'pre_get_posts\', \'filter_terms_by_ids\' ); function filter_terms_by_ids( $w