子比主题修改tag标签固定链接

文章摘要
scbkw
文章最后更新时间:2025-01-15 13:39:18某些文章具有时效性,若有错误或已失效,请在下方 留言或联系 苏晨博客网

子比的标签固定链接为/tag/tag的别名,而我没添加标签的时候,别名直接与标签名相同,有的时候是汉字,听说不利于seo,下面代码可以帮我们解决这个问题

效果演示

子比主题修改tag标签固定链接-苏晨博客

代码


// 修改标签链接结构
function modify_tag_link($link, $term, $taxonomy) {
    if ($taxonomy === 'post_tag') {
        return home_url('/tag/' . $term->term_id . '.html');
    }
    return $link;
}
add_filter('term_link', 'modify_tag_link', 10, 3);

// 添加重写规则
function add_tag_rewrite_rules() {
    add_rewrite_rule(
        'tag/([0-9]+)\.html$',
        'index.php?tag_id=$matches[1]',
        'top'
    );
}
add_action('init', 'add_tag_rewrite_rules');

// 查询变量添加 tag_id
function add_tag_query_vars($vars) {
    $vars[] = 'tag_id';
    return $vars;
}
add_filter('query_vars', 'add_tag_query_vars');

// 根据 tag_id 修改查询
function modify_tag_query($query) {
    if (!is_admin() && $query->is_main_query()) {
        $tag_id = get_query_var('tag_id');
        if ($tag_id) {
            $term = get_term($tag_id, 'post_tag');
            if ($term && !is_wp_error($term)) {
                $query->set('tag', $term->slug);
            }
        }
    }
}
add_action('pre_get_posts', 'modify_tag_query');

使用教程

将代码上传到function.php里或者func.php里,访问后台,点击设置>固定链接,点击保存,即可有效

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容