当前结构为/%year%/%monthnum%/%postname%.html
所需结构为/%postname%/
因为我们已经使用如下URL定位domain.com/2015/04/example-post.html
, 我们希望人们被重定向到domain.com/example-post/
.
我已经试过安装一些插件,比如Simple 301 Redirects, 这看起来不错,因为它似乎与下图所示的规则配合使用:
但它对我们不起作用,我们从旧的URL获得404:(
手动添加301规则不是一个选项,因为我们有数千条帖子,用脚本来做是一个简单的选项,但我认为拥有数千条301规则不是最佳选择,是吗?
还有其他建议吗?
最合适的回答,由SO网友:Max Yudin 整理而成
你不需要插件来实现你的目标。在中使用服务器重定向.htaccess
文件,因为它不会加载处理器来解释WordPress PHP代码,也不会占用时间。重定向将在WordPress运行之前完成。
RewriteRule ^[0-9]+/[0-9]+/(.*)\\.html$ /$1 [R=301,L]
在哪里
[0-9]+/
是数字年和月(.*)
是我们将在下面使用的部分(example-post
在您的情况下)/$1
是我们从上面得到的部分,301重定向对于SEO来说是完全完美的。