WordPress分页伪静态加html后缀
WordPress分页链接的友好性改造之旅
一、问题的发现
在使用WordPress搭建网站的过程中,我发现了内容页分页的一个尴尬问题。WordPress默认的永久链接形式为page.html/2,这样的链接结构既让人困惑,也不利于搜索引擎的收录。这究竟是一个html文件还是一个目录呢?
二、心中的困惑
看着那些带有“.html”后缀的链接后面跟着一个斜杠和数字,我简直有些摸不着头脑。更糟糕的是,我发现搜索引擎对于这种奇特的链接结构并不友好,很多重要的内容因为分页问题而被忽视,这无疑让我无法接受。
三、动手解决
于是,我决定自己动手,对WordPress的链接生成与规则进行改造。
四、解决方案的构思
2. 利用WordPress或服务器的RewriteRule:将page-[123456].html的链接形式还原为更友好的/123456结构。
3. 添加钩子redirect_canonical:防止WordPress从page-[123456].html跳转到/123456时发生强行跳转,确保用户体验的顺畅。
五、实践过程与体验分享
这个改造过程虽然有些复杂,但当我看到改造后的WordPress网站,心中的满足感无法言表。现在,我的网站内容页的分页链接变得更加友好,搜索引擎的收录情况也有了明显的改善。如果你也有类似的困扰,不妨试试我的这个方法,相信你会有不错的收获。
让我们深入了解这个类的每个功能:
`pagelink_rewrite_rules`函数:这个函数是为了新的链接格式增加重定向规则。它防止原始分页链接的重定向规则产生重复收录的问题。访问原始链接将返回404错误。新的规则将匹配到的分页链接重定向到新的格式。
`cancel_redirect_for_paged_posts`函数:此函数禁止WordPress将页面分页链接跳转到原始格式。当访问的是单篇文章的第二个页面或更多页面时,该功能会阻止重定向,确保用户能够正常访问分页内容。
```yaml
rewrite: if ( !is_dir() && path ~ "(.+?)/([^/]+)(/page-([0-9]+))+.html/?$") goto "index.php?name=$2&page=$4"
```
如果你使用的不是SAE,也不必担心。WordPress自带的rewrite_rules功能可以助你一臂之力。只需登录后台,进入“设置”,找到“固定链接”选项,无需填写任何内容,直接保存更改即可。代码会自动在数据库中硬性加入一条规则,其形式如下:
```css
"(.+?)/([^/]+)(/page-([0-9]+))+.html/?$" => "index.php?name=$matches[2]&page=$matches[4]"
```
经过这样的设置,无论是通过哪种方式访问,都可以顺利进入第二页。这样,你就可以在第二页展示你想要的内容,并测试分页后缀的效果了。
至此,基本功能已经实现。小伙伴们是否明白了呢?如果在设置过程中遇到任何问题,欢迎留言咨询。你的每一个问题,我们都会认真对待,尽力解答。让我们一起在知识的海洋中遨游,共同更多可能!
编程语言
- WordPress分页伪静态加html后缀
- Extjs 点击复选框在表格中增加相关信息行
- 如何使用vuejs实现更好的Form validation-
- JS选项卡动态替换banner图片路径的方法
- Symfony2 session用法实例分析
- js遍历json的key和value的实例
- PHP中__get()和__set()的用法实例详解
- 基于vue-cli配置lib-flexible + rem实现移动端自适应
- 解析Json字符串的三种方法日常常用
- PHP error_log()将错误信息写入一个文件(定义和用法
- 正则表达式中的反向预搜索(上)
- 基于JavaScript实现鼠标悬浮弹出跟随鼠标移动的带
- jQuery基于ID调用指定iframe页面内的方法
- vue params、query传参使用详解
- PHP echo()函数讲解
- 如何利用PHP执行.SQL文件