WordPress使用ID、拼音等作为标签固定链接方法

使用WordPress创建网站时系统默认的展示方式为中文,访问标签也是xxx.com/tag/中文/,虽然搜索引擎也认同这种链接,但是蜘蛛抓取的时候,需要将中文转换为urlencode编码来进行抓取,这样就多了一个步骤。

如:https://www.zhutibaba.com/tag/%E6%A0%87%E7%AD%BE

在搜索引擎白皮书中,英文、拼音、数字这类的形式更加友好,就如主题巴巴目前采用的就是转拼音。

展示出来的链接是:https://www.zhutibaba.com/tag/baidu

感官看上去更舒服,同时也利于蜘蛛抓取的便利。

下面小编就分享几种方法:

一:拼音形式

下载一个中文转拼音插件,如Pinyin Slugs,开启后发布标签自动会转换成拼音。但是要注意2个问题:1,之前发布的不会自动变更,所以如果是老站启用,之前的标签需要手动改下;2,多音字可能会转换错误,比如“成长”有可能会转换成“chengchang”。

二: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;

微信扫码咨询
微信扫码咨询
特惠: ¥499元加入终身会员下载所有主题 现在加入
中秋促销: 主题199元起 / 会员400元起 现在加入