将wordpress的tag标签默认的 encodeURI() 函数模式转换为MD5,让tag标签链接更方便被搜索引擎收灵。

目标就如同标题如示,优化一下tag链接,也算是SEO优化的一部分吧。

代码如下:

// 1. 生成标签链接时将slug替换为MD5
add_filter('term_link', function($url, $term, $taxonomy) {
if ($taxonomy === 'post_tag') {
$md5 = md5($term->name);
// 只替换最后的slug部分
$url = preg_replace('/(\/tag\/)([^\/]+)(\/?)/', '$1' . $md5 . '$3', $url);
}
return $url;
}, 10, 3);
// 2. 解析请求时将MD5还原为真实slug
add_action('parse_request', function($wp) {
if (isset($wp->query_vars['tag'])) {
$md5 = $wp->query_vars['tag'];
// 查询所有标签
$tags = get_terms([
'taxonomy' => 'post_tag',
'hide_empty' => false,
]);
foreach ($tags as $tag) {
if (md5($tag->name) === $md5) {
// 替换为真实slug
$wp->query_vars['tag'] = $tag->slug;
break;
}
}
}
});

 

 

 

未经允许不得转载:泥人传说 » 将wordpress的tag标签默认的 encodeURI() 函数模式转换为MD5,让tag标签链接更方便被搜索引擎收灵。
分享到:
赞(0)

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址