wordpress建立的站点,文章标签默认是中文,标签少的话还可以自己修改别名,但是多的话,那样修改就费劲了,而且还有一个缺点就是如果遇到同音的词如何区分(比如手机,收集,首级),那么我们是否可以用标签的ID来进行区分呢?又应该如何去操作呢?下面就来跟随我的脚步一步步实现吧!
以下代码加在主题目录的functions.php 中即可实现,添加代码后需要进入后台重新保存一下固定链接。
/* WordPress文章标签以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; }