如何在WordPress中修改.htaccess将动态URL转为友好URL?
在WordPress中修改.htaccess实现URL静态化
需求说明
需要将动态URL:
/boom/?cat=Kenmerken&subcat=Mooie_stam&naam=Acer-capillipes#boom
转换为友好的静态化URL格式:
/boom/categorie/subcategorie/name/
修改步骤
- 找到WordPress根目录下的
.htaccess文件(默认隐藏,需开启系统显示隐藏文件的设置) - 务必先备份原文件,避免修改出错无法恢复
- 在
# BEGIN WordPress和# END WordPress的规则块之前添加以下自定义重写规则:
RewriteRule ^boom/([A-Za-z-]+)/([A-Za-z-]+)/(.*)/? index.php?cat=$1&subcat=$2&naam=$3 [L]
规则解释
^boom/([A-Za-z-]+)/([A-Za-z-]+)/(.*)/?:匹配以boom/开头,包含分类、子分类、名称三个部分的URL,末尾斜杠可选index.php?cat=$1&subcat=$2&naam=$3:将URL中匹配到的三个分段分别映射到动态参数cat、subcat、naam[L]:标记为最后执行的规则,匹配成功后不再处理后续重写规则
注意事项
- 确保服务器已开启
mod_rewrite模块(Apache服务器需开启,Nginx环境不适用.htaccess) - 修改完成后测试静态URL是否能正确解析到对应内容,若需要强制将动态URL跳转至静态URL,可将规则标记改为
[R=301,L] - 后续修改WordPress固定链接设置时,可能会覆盖
.htaccess内容,建议将自定义规则放在WordPress默认规则块之外
内容的提问来源于stack exchange,提问作者Mart1n
相关产品推荐
相关产品推荐

