我们可以分页显示这个相关内容页面... 先打开相关内容使用的模板文件 ... related.php ... 想要分页显示查询的结果,我们可以设置一下查询的参数 ... 先把这个 nopaing ,不使用分页参数去掉...
然后用 posts_per_page 参数 ... 设置一下每页显示的内容数量 ... 'posts_per_page' => 3, 每页显示3个结果 ...
想要在页面上显示分页器,我们可以安装一个叫 WP-PageNavi 的插件 (提前添加样式 .wp-pagenavi{margin-top: 25px;}) ... 然后可以使用 wp_pagenavi() 函数来输出这个分页器 ...
<?php wp_pagenavi( array( 'query' => $related ) ); ?>
在这个函数里,我们要告诉一下它显示哪个查询的分页 ... 这里我们设置为了 $related 这个查询 ....
保存,回到相关内容页面 ... 如果查询到的结果超过三个,会分页显示其余的结果 ...
点击 第二页 ... 会提示找不到页面 ... 因为 WordPress 不知道使用什么形式来匹配这个地址 ... 回到 WordPress 管理后台 .
在设置里,找到固定链接 ... 先设置为 默认 ... 保存更改 ... 回到相关内容的页面 .. 我们输入 盗梦空间 相关人物这个页面真实的地址 ...
?pagename=related&related_content_id=5&related_type=people
再点击 第二页 ... 在地址里,你会看到多了一个 paged 查询参数 ... 参数的值是 2
在页面上并没有显示第二页结果的内容 ... 我们需要再改一下查询参数 ...
回到 related.php 这个模板文件 ... 再这个自定义查询里,添加一个 paged 参数 ... 'paged' => $paged ...
参数的值设置为 $paged ... 这个 $paged 就是 paged 查询参数.. WordPress 会把这个参数的值放在一个叫 $paged 的变量里 ...
所以这里我们可以直接输入 $paged 来动态的获取到 paged 查询参数的值 .
保存 .. 回到前台 ... 刷新 ...
现在,在页面上就会显示第二页的内容了 ... 下面我们再去为这个形式的地址添加一条重写规则 ...
分页的地址重写规则
先复制一下这个地址 ... 再打开主题的 functions.php ... 找到之前添加重写规则的代码 .
另起一行 ... $rules[''] = ''; 把刚才复制的代码,粘贴到等号右边的这个引号里 ... ?pagename=related&related_content_id=5&related_type=people&paged=2
在 ? 号前加上 index.php ... 然后把可能有变化的地方用 $matches[] 占位符替换一下 ..
related_content_id=$matches[1] ... related_type=$matches[2] .... paged 后面用 $matches[3] ....
然后再去设计重写规则 ... 第一部分是 movie ... 再输入一个斜线 ... 开始第一个匹配的地方 .([0-9]{1,}) ... 地址里的 related_content_id 会匹配在这里 ..
再输入 / ,后面是第二个匹配的地方 ... ([^/]*) ... related_type 的值会匹配在这里 ... 第三部分可以用一个静态的 page ...
最后是第三个匹配的地方,这里要匹配的是 paged 查询参数的值 ... ([0-9]{1,}$) 保存 ...
回到管理后台 ... 选择一种友好的地址形式... 点击 保存更改 ... 为了确保 WordPress 认识我们刚才添加的重写规则 ... 再点一下 保存更改 ... 冲洗一下重写规则 ...
回到相关内容的页面 ... 输入地址 movie/2/people/page/2 ...
WordPress 会使用我们添加的重写规则,匹配正确的地址,显示相应的内容 ....