WordPress使用 ID 作为标签固定链接方法

站长在使用WordPress的时候,开启固定链接,可以使用设定别名来改变固定链接。

使用中文、英文、拼音作为固定连接?

WordPress使用 ID 作为标签固定链接方法

最初创建标签的时候,自动生成的别名为中文的,访问标签也是xxx.com/tag/中文/,虽然搜索引擎也认同这种链接,但是蜘蛛抓取的时候,需要将中文转换为urlencode编码来进行抓取。如:

xxx.com/tag/%E6%A0%87%E7%AD%BE/

这样就多了一个步骤。

白皮书中写的,英文,拼音这种形式更加的友好,就如我上面的标签,站长,别名设置为 zhanzhang 。

这样之后访问标签的固定连接就为 xxx.com/tag/zhanzhang,感官上好记明显,同时也利于蜘蛛抓取的便利。

把tag标签默认变为ID(数字)形式

因为自己设置别名很费事费力,那么有没有方法可以将简历的标签,直接显示为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;
 
}

另外还有一些插件也是带这种功能的,如:WPJAM「#分类管理插件#」

各位可以自取所需。

原创文章,作者:技术大师,如若转载,请注明出处:https://www.xingkongweb.com/5653.html