WordPress的文章TAG標簽設置鏈接,如何像文章一樣使用ID的方式顯示固定鏈接

2022 年 6 月 25 日09:57:41SEO知識評論487

我們都知道wordpress文章標簽默認是中文,WordPress 文章 tag 標簽的固定鏈接默認使用標簽的別名,如果標簽沒有設置別名,并且標簽名字帶中文,那么固定鏈接就會帶有中文,然后被 urlencode 轉義成類似下面的字符串:

比如:

http://www.nsms.net/tag/尋人找人/

http://www.nsms.net/tag/%e5%af%bb%e4%ba%ba%e6%89%be%e4%ba%ba/

標簽少的時候可以自己修改別名,比如拼音或者英文,但是有一個缺點就是同音詞的時候不好區分,只能在別名后面加-1,-2 這樣的區分,比如手機,收集,手記,遇到同音詞的時候就很不好,展示方式看個人喜歡,除了中文展示會轉碼外,并沒什么卵用,個人覺得用 ID 方式最好。

但是文章的鏈接在固定鏈接設置中可以設定使用 post_id 作為文章/頁面「固定鏈接」形式,但是無法設置文章 tag 標簽也使用 ID 形式固定鏈接。

那么,WordPress 文章 tag 標簽可以設置成像文章一樣使用 ID 形式固定鏈接嗎?

方法:純代碼 修改 WordPress 的文章TAG標簽用ID顯示

把下面代碼放到主題根目錄下 functions.php 文件即可,需要注意的是代碼改好后,需要進入后臺,設置-固定鏈接-保存一下或者修改一下重新改回來保存然固定鏈接生效,否則新標簽鏈接全部 404。

將以下代碼加在主題目錄的 functions.php 中即可實現,添加代碼后需要進入后臺重新保存一下固定鏈接。

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;  
}

我的這個網站由于之前沒有設置,現在設置沒什么用了。
所以我用另外的網站設置了一下,效果如下:https://www.nyhywj.com/tag/hywj

5是tag的ID

  • 本文由 發表于 2022 年 6 月 25 日09:57:41
  • 轉載請務必保留本文鏈接:http://www.nsms.net/seowz/7097.html
匿名

發表評論

匿名網友 填寫信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: