You need to enable JavaScript to run this app. WordPress点击标签时is_tag判断不生效触发归档条件如何解决
优惠活动
大模型
产品
解决方案
定价
更多

WordPress点击标签时is_tag判断不生效触发归档条件如何解决

问题原因

你的问题出在条件判断顺序错误。WordPress 中标签页本身属于归档页的子类型,is_archive() 在标签页场景下也会返回 true,你将is_archive()放在判断首位,标签页加载时会直接命中第一个分支,不会执行后续is_tag()的判断逻辑。

解决方法

调整判断顺序,将更具体的is_tag()判断放在更宽泛的is_archive()判断之前即可,同时建议将仅归档页需要用到的$archive_year定义移到对应分支内部,避免非归档页调用get_the_time()返回异常值。

修正后代码如下:

<div class="col-md-8">
    <?php
    $current_tag = single_tag_title("", false);
    // 优先判断更具体的标签页规则
    if (is_tag()) {
        ?>
        <h1>tag working <?php the_title(); ?></h1>
        <p>Tag: <?php single_tag_title(); ?></p>
        <?php
    } elseif (is_archive()) {
        // 非标签的其他归档页走该分支
        $archive_year = get_the_time('Y');
        ?>
        <h1 class="pt-2"><?php echo 'Archive ', $archive_year?></h1>
        <?php
    } else {
        ?>
        <h1><?php the_title();?></h1>
        <?php
    }
    ?>
</div>

补充说明

WordPress 条件标签的通用判断规则是:范围越小、越具体的判断逻辑越靠前。比如分类页is_category()、作者页is_author()这类同样属于归档子类型的页面,如果后续需要新增对应判断,也需要放在is_archive()之前。

内容的提问来源于stack exchange,提问作者Beep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 03:45:06