昨天有網友給我留言,想讓tag標簽頁的URL后面自動加html,比如 www.abc.com/tag/1,變成www.abc.com/tag/1.html。這或許是出于某種SEO目的,不過我覺得這樣做沒什么意義。
實現這個目的的方法還是比較簡單的,只是標簽頁是存檔頁,需要分頁,分頁后的鏈接形式為tag/1.html/page/2,就無法實現以.html為結尾,雖然我不懂什么SEO,但是我覺得這樣的鏈接不好看。昨晚為了這個問題弄了一個晚上也沒找到什么好的方法,這里就講講不太完美的方法吧,不過這里要說明的是,首先你的WP得使用固定鏈接。
一、鏈接轉換代碼
使用文本編輯器打開當前主題目錄下的functions.php,添加以下php代碼:
// applied when calling get_tag_link()
add_filter(‘tag_link’, ‘ludou_html_tag_link’, 10, 2);
/**
* tag頁鏈接轉換,將 /tag/tag-name/ 轉成 /tag/tag-name.html
*/
function ludou_html_tag_link($tag_link, $tag_id) {
return rtrim($tag_link, ‘/’) 。 ‘.html’;
}
二、添加rewrite規則
使用文本編輯器打開博客根目錄下的.htaccess,也就是存放你的WordPress固定鏈接重寫規則的文件。在 RewriteBase / 下一行添加以下代碼:
RewriteRule ^tag/(.+).html$ /index.php?tag=$1 [L]
RewriteRule ^tag/(.+).html/page/([0-9]+)$ /index.php?tag=$1&paged=$2 [L]
需要注意的是,如果你的標簽頁URL不是以tag開頭,那么你需要將以上代碼中tag改成你的標簽前綴。另外.htaccess中不一定有 RewriteBase / 這一行代碼,例如你將WordPress安裝在子目錄wp,那么這一行代碼可能就是這樣 RewriteBase /wp/
三、參考內容
WordPress Permalinks: Remove tag base and add the .html extension
主題貓WP建站,累計幫助1300+客戶成功建站,為站長提供支持!
立刻開啟你的建站之旅