重命名页面后WordPress跳转错误问题求助
嗨,这个问题我在帮客户调试WordPress时经常碰到,大概率是这几个地方的重定向在搞鬼,按顺序排查就能解决:
排查并删除WordPress页面跳转规则的关键位置
1. WordPress核心自带的旧Slug自动重定向
WordPress默认会给修改过URL别名(slug)的页面自动添加301重定向,这是它的规范URL功能。要处理这个:
- 登录WP后台,进入页面列表,找到那个原本叫“location”、现在改名为“gallery”的页面,点击编辑
- 往下滚动到永久链接区域,点击「编辑」按钮,就能看到旧slug旁边是否有“旧slug重定向”的提示
- 如果要取消这个自动重定向,你可以安装轻量插件
Disable Canonical URL Redirection,或者在主题的functions.php文件末尾添加这段代码(注意备份主题文件再修改):
// 禁用WordPress规范URL自动重定向 remove_filter('template_redirect', 'redirect_canonical');
⚠️ 注意:这段代码会禁用所有页面的规范重定向,如果只想针对单个页面取消,建议用专门的重定向管理插件来精准控制。
2. 第三方重定向插件(比如Redirection)
如果你之前安装过像Redirection、Yoast SEO这类带重定向管理功能的插件,规则可能存在这里:
- 进入WP后台,找到插件对应的菜单(比如Redirection插件的「工具」→「重定向」)
- 在规则搜索框里输入
location或者目标地址gallery,找到对应的跳转规则后直接删除即可
3. 服务器根目录的.htaccess文件
如果是手动在服务器配置里加了重定向,规则会存在.htaccess文件中:
- 通过FTP工具或主机控制面板的文件管理器,找到网站根目录下的
.htaccess文件(注意这个文件默认是隐藏的,需要开启显示隐藏文件) - 打开文件后,查找类似以下的规则:
# 301重定向示例 Redirect 301 /location /gallery
或者用RewriteRule的形式:
RewriteRule ^location$ /gallery [R=301,L]
找到后删除这些行,保存文件即可。修改前一定要备份.htaccess,避免配置错误导致网站无法访问。
4. 主题或自定义代码中的硬编码重定向
有些主题开发者或者自定义功能会在代码里写死跳转规则:
- 打开主题的
functions.php文件,或者你用的自定义代码片段插件 - 搜索
wp_redirect()、header("Location:")这类关键词,看看有没有针对/location的跳转代码,找到后删除即可
最后,排查完成后记得清除浏览器缓存和WordPress缓存插件(如果有的话),不然可能还会看到旧的跳转缓存。
内容的提问来源于stack exchange,提问作者Soerendip
相关产品推荐
相关产品推荐

