問題描述

對不起,如果這是重複的 – 我找不到答案。

如何將自定義帖子型別歸檔頁面重寫為’man-made’ WordPress 頁面?

例如:

  • 單頁:http://www.mywebsite.com/cool-post-type/awesome-single-post/

  • 存檔頁面:http://www.mywebsite.com/cool-post-type/

我想 http://www.mywebsite.com/cool-post-type/重寫到 http://www.mywebsite.com/about-cool-post-types/

我可以用 htaccess 這樣做,語法是什麼? (我不擅長 htaccess!)

這不行:

RewriteRule ^cool-post-type/?$ /about-cool-post-types [L]

或者我必須在 WordPress 原始碼中執行此操作?我不想要!

最佳解決方案

這個其實很簡單。當您使用 register_post_type 宣告您的帖子型別時,需要為’has_archive’ 新增一個新引數。

所以你會新增一些事情:

'has_archive' => 'about-cool-post-types'

然後,轉到您的設定> 固定連結來重新整理它們,它應該工作。我在本地進行了測試,這似乎是以不同的 URL 自動生成歸檔頁面的方式。然後,您應該能夠在 CPT 的 s to 中建立一個頁面。

次佳解決方案

現在還有一個簡單的 1 檔案外掛,由 HumanMade 民間人士介紹;

https://github.com/humanmade/page-for-post-type

(Meta:我知道連結的答案通常不是很好,但我不只是想將 source-code 複製貼上到答案中,這種事情最好的策略是什麼?)

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。