如何获取WordPress页面自定义URL 避免生成带ID链接及404错误
WordPress自定义路径404及带ID问题解决方法
1. 配置全局固定链接结构
问题根源是WordPress默认启用了带ID的朴素路由规则,可类比ASP.NET的全局路由配置,修改步骤如下:
- 进入WordPress后台,左侧菜单选择「设置」→「固定链接」
- 在可选结构中选择文章名,或在自定义结构栏输入
/%postname%/ - 点击「保存更改」,此时全局路由规则会默认生成不带ID的语义化路径
2. 自定义单页面的URL别名
针对单独页面需要指定webdevelopment这类自定义路径的需求,可直接修改页面别名:
- 进入对应页面的编辑界面,展开右侧边栏的「固定链接」设置项
- 在「URL别名」输入框中填入你需要的路径字段(如
webdevelopment),注意不要包含特殊字符和空格 - 点击「更新」保存页面设置
3. 修复404访问报错
修改固定链接后出现404是因为服务器没有配置对应的伪静态规则,根据你使用的服务器环境选择对应操作:
Apache环境
确保站点根目录的.htaccess文件有可写权限,保存固定链接时WordPress会自动生成规则,若未生效可手动写入以下内容:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Nginx环境
在站点的Nginx配置文件中添加以下伪静态规则,添加后执行nginx -s reload重载配置生效:
location / { try_files $uri $uri/ /index.php?$args; }
虚拟主机面板环境(宝塔、cPanel等)
直接在站点对应的「伪静态」设置页,选择官方预设的WordPress规则保存即可,无需手动编写代码。
配置完成后重新插入页面链接,生成的URL就会是你需要的语义化路径,访问不会出现404错误。
内容的提问来源于stack exchange,提问作者dotNetBlackBelt
相关产品推荐
相关产品推荐

