我正在开发新闻部分,这是我第一次使用ProcessWire。 我有以下代码:
<?php
$articles = $page->children("limit=2");
if(!empty($articles)):
foreach($articles as $article):
?>
<div class="news-article">
<div class="row">
<div class="small-12 medium-12 large-9 columns">
<a href="<?php echo $article->url;?>"><h3 style="padding-bottom: 15px;"><?php echo $article->title;?></h3></a>
<?php echo substr($article->body, 0, 375); ?>...
<p><a href="<?php echo $article->url;?>">Read full story ></a></p>
</div>
<div class="small-12 medium-12 large-3 columns">
<img src="<?php echo $article->images->url . $article->images; ?>" style="margin: 20px 0 20px 0;" />
</div>
<div style="clear: both;"></div>
</div>
</div>
<style>
.news-article {
padding: 20px 0 0 0;
margin: 20px 0 20px 0;
}
</style>
<?php
endforeach;
else:
echo "<h3>No articles found</h3>";
endif;
$pagination = $articles->renderPager();
echo $pagination;
?>
我的问题是分页正确显示2页链接,但点击第二页显示第2页的前2篇文章。
我假设我必须修改我的文章显示代码以考虑我所在的页面,但我不确定该怎么做。
有没有人有任何想法?
谢谢, 格雷厄姆
答案 0 :(得分:6)
请先回到official pagination documentation,并确保再次仔细阅读。
我想你错过了在你的模板中启用分页:
确定要使用分页的模板。转到管理员&gt;设置&gt;模板&gt; [您的模板]&gt; URL,并选中以下框:允许页码。保存。
现在,您应该可以使用您的代码,而不会出现任何问题。每次使用$pages->find()
limit
参数&gt; 1时,都会自动处理。