Wordpress:在分页的另一页上显示内容

时间:2014-06-22 21:38:00

标签: php wordpress pagination

我需要在帖子的分页的另一页上显示the_content()。例如。第一页是一个名为'index'的额外字段。第2页是“摘要”,第3页显示了作者信息。在第4页,the_content应该开始。

问题在于wordpress开始对页面进行计数,并且在第4页上,the_content显示为在第4页上显示(因此在<! - next page - >之后4次)。

我这样做了:

$url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
if (!preg_match('#/\d+/?#', $url)) {
    the_field("index");
} elseif(false !== strpos($url,'/2/')) {
    get_the_author_meta('first_name').' '.get_the_author_meta('last_name');
} elseif(false !== strpos($url,'/3/')) { 
    the_field("abstract");
} else {
    the_content();
}

但是,正如我所说,the_content()就像第4页一样开始。我知道它应该这样做。 我怎么能这样做第4页就像the_content()的第1页。

澄清更新:

我想在我的主题文件 content-single.php 中放出the_content()以在前端显示我的文章。我的分页处于活动状态,因此Wordpress在找到<时会对我的文章进行分页。 ! - 下一页 - >。那是原生的Wordpress行为。

但是我想在the_content()之前添加一些额外的内容。

Page 1: Index
Page 2: Abstract
Page 3: Author
Page 4: START the_content() page 1
Page 5: the_content() page 2
Page 6: the_content() page 3

依旧......

我正在使用上面编写的代码执行此操作。我查看我们是哪个页面。 ($ url,'/ 3 /')是第3页。

即使我检查了第4页(在else部分中)并且输出了the_content(),这里wordpress输出了the_content()的第4页,所以4次后的部分< ! - 下一页 - >。我没有使用第4页的the_content()开始,但它从第1页开始,但不显示它。内部页面计数器运行一些方式。

如何启动第4页的the_content()?或者我如何阻止Wordpress对页面进行计数?

1 个答案:

答案 0 :(得分:0)

我注意到的第一件事就是你正在使用正则表达式来匹配页面的数字!您应该只使用$page(特定于WordPress的全局变量)。

  

$ page(int)由查询var页面指定的帖子页面。   http://codex.wordpress.org/Global_Variables

但是我建议使用短代码,比编辑single.php容易得多,并提供更大的灵活性。

[section page='index'] // obviously you need to build a custom shortcode

<!--nextpage-->

[section page='abstract']

<!--nextpage-->

[section page='author']

<!--nextpage-->

<!-- page's 1 content -->

<!--nextpage-->

<!-- page's 2 content -->

<!--nextpage-->

<!-- page's 3 content -->