今天教大家如何让WordPress的 文章TAG标签用ID的方式显示链接呢?

我们都知道WordPress文章标签默认是中文,比如标签少的时候可以自己修改别名,比如拼音或者英文,但是有一个缺点就是同音词的时候不好区分,只能在别名后面加-1,-2 这样的区分,比如手机,收集,首级,遇到同音词的时候就很不好,展示方式看个人喜欢,除了中文展示会转码外,并没什么卵用,个人觉得用 ID 方式最好,比如 Discuz 的标签展示方式就最好。

其实最重要的是中文TAG标签会在某些浏览器被转义成乱码,个人觉得不好看!

将以下代码加在主题目录的 functions.php 中即可实现,添加代码后需要进入后台重新保存一下固定链接。

/* 标签以id方式展示*/

add_action('generate_rewrite_rules','tag_rewrite_rules');

add_filter('term_link','tag_term_link',10,3);

add_action('query_vars', 'tag_query_vars');

function tag_rewrite_rules($wp_rewrite){

$new_rules = array(

'tag/(\d+)/feed/(feed|rdf|rss|rss2|atom)/?$' => 'index.php?tag_id=$matches[1]&feed=$matches[2]',

'tag/(\d+)/(feed|rdf|rss|rss2|atom)/?$' => 'index.php?tag_id=$matches[1]&feed=$matches[2]',

'tag/(\d+)/embed/?$' => 'index.php?tag_id=$matches[1]&embed=true',

'tag/(\d+)/page/(\d+)/?$' => 'index.php?tag_id=$matches[1]&paged=$matches[2]',

'tag/(\d+)/?$' => 'index.php?tag_id=$matches[1]',

);

$wp_rewrite->rules = $new_rules + $wp_rewrite->rules;

}

function tag_term_link($link,$term,$taxonomy){

if($taxonomy=='post_tag'){

return home_url('/tag/'.$term->term_id);

}

return $link;

}

function tag_query_vars($public_query_vars){

$public_query_vars[] = 'tag_id';

return $public_query_vars;

}

添加代码后链接样式

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值