问题描述
对不起,如果这是重复的 – 我找不到答案。
如何将自定义帖子类型归档页面重写为’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 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。