今天无意间发现,在摆弄自己的博客网站时,发现标签目录分页后,点选下一页的时候会出现404错误。
待解决标签过次页问题后,已能正确显示后。进一步测试网站时,又发现网站的搜索结果页,在过次页问题上再次出现了404错误。
百度了一下这个问题,发现这算是wordpress的一个通病,很多人都遇到了这个问题,但是解决办法基本上仅适用老版本的wordpress,新版本的已经不能按照教程适用了。
通过多次测试,wordpress4.9.7版本,修改中文标签、标签分页、搜索分页404的解决办法如下:
首先是修改标签中文404的问题:
找到wordpress网站目录WP-include/class-wp.php( 需要修改两处 )
如果修改正确的话,现在,wordpress网站点击中文标签已经可以正常显示页面,但是如果出现多个分页,点击下一页时,依旧会出现404错误。
接下来,我们来修改标签中文分页404的问题:
找到wordpress网站目录wp-includes目录中的link-template.php文件
找到
$result = $base . $request . $query_string;
替换为
$result = $base . mb_convert_encoding($request, ‘UTF-8’, ‘GBK’) . $query_string;
如果修改正确的话,现在,wordpress网站点击中文标签的过次页也已经可以正常显示页面。
最后, 我们来修改搜索分页404的问题:
在当前主题的functions.php文件第一行代码 <?php 下面添加以下代码:
function tongleer_search_url_rewrite() {
if ( is_search() && ! empty( $_GET[‘s’] ) ) {
wp_redirect( home_url( “/search/” ) . urlencode ( get_query_var( ‘s’ ) ) );
exit();
}
}
add_action( ‘template_redirect’, ‘tongleer_search_url_rewrite’ );
自此,如果顺利的话,wordpress4.9.7版本已经可以支持中文标签、中文标签分页面、搜索结果分页面。
——百花谷博客2018年7月19日原创,2018年7月20号转发至头条号!