WordPress默认链接是参数的形式,也就是常说的动态链接,这种链接对于SEO来说并不是很友好,所以一般我们都会对WordPress的固定链接格式进行修改,设置成伪静态。伪静态与静态的区别就是链接看起来是和静态页面链接一样,但是其实页面还是程序动态生成的。
伪静态是需要服务器支持的,比如mod_rewrite模块
、伪静态规则
的配置,具体可以咨询服务器管理员,另外部分服务器可能不支持中文链接,这个需要注意。
WordPress 伪静态规则(Apache/Nginx)
Apache伪静态规则
Apache是 Linux 主机下常见的环境,现在一般的 Linux 虚拟主机都采用这种环境。新建一个 htaccess.txt 文件,添加下面的代码:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
然后上传到 WordPress 站点的根目录,重命名为 .htaccess 即可
Nginx伪静态规则
Nginx环境一般是Linux 主机 VPS或服务器用户用的比较多,这些用户一般都会自己配置Nginx,或者有专门的人帮你配置,打开 nginx.conf 或者某个站点的配置环境,比如 wpdaxue.com.conf(不同人配置的不一样),在 server { } 大括号里面添加下面的代码:
location /
{
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
保存,重启 Nginx 即可。
注:如果以上规则不适用,请自己查看WP官方文档:https://codex.wordpress.org/Nginx
若还是不会设置,那你可以直接安装宝塔一键就可以设置。
设置方法
进入WordPress后台设置>固定链接
,其中第一个“朴素”就是默认的设置,后面几个是WordPress给出的几个可选项,如果都不是你喜欢的链接格式,那么也可以使用最后一个自定义结构
。
使用自定义结构
的话,就需要先了解下有哪些可以设置的参数了。WordPress官方文档列表如下:
- %year% 基于文章发布年份,比如2007;
- %monthnum% 基于文章发布月份,比如05;
- %day% 基于文章发布当日,比如28;
- %hour% 基于文章发布小时数,比如15;
- %minute% 基于文章发布分钟数,比如43;
- %second% 基于文章发布秒数,比如33;
- %postname% 基于文章的postname,其值为撰写时指定的缩略名,不指定缩略名时是文章标题;
- %post_id% 基于文章post_id,比如423;
- %category% 基于文章分类,子分类会处理成“分类/子分类”这种形式;
- %author% 基于文章作者名。
将上述参数进行组合,即可得到WordPress的固定链接形式。
网上常见的几种设置方法:
- /%year%/%monthnum%/%day%/%postname%/
- /%year%/%monthnum%/%postname%/
- /%year%/%monthnum%/%day%/%postname%.html
- /%year%/%monthnum%/%postname%.html
- /%category%/%postname%.html
- /%category%/%post_id%
- /%postname%.html
- /%post_id%.html
我们一般使用/%postname%.html
或者/%post_id%.html
。
设置好了以后,保存即可完成固定链接和伪静态的设置了。