我一直在尝试为我的Middleman Blog激活分页,但是由于某种原因,即使分页本身似乎可以工作(如底部的按钮所示,导致我转到第三页),但每篇文章均显示了所有文章。单个页面,而不是十个
config.rb中的部分
activate :blog do |blog|
blog.name = "en"
blog.prefix = "blog"
blog.permalink = "/{year}/{month}/{day}/{title}.html"
blog.sources = "/posts/:year-:month-:day-:title.html"
blog.layout = "blog_layout"
blog.tag_template = "tag.html"
blog.paginate = true
blog.page_link = "page:num"
blog.per_page = 10
end
博客Index.html
---
pageable: true
blog: en
priority: 1.0
change_frequency: weekly
description: Tbd.
title: Blog
---
<div class="page-content">
<div class="container">
<ul class="blog-post-list">
<% blog.articles.each do |article| %>
<li>
<a href="<%= article.url %>">
<div>
<img src="<%= article.data.image %>" class="blog-post-list__image" />
</div>
<div class="blog-post-list__post-preview">
<p class="blog-post-list__title"><%= article.title %></p>
<p><%= article.summary(140, '...') %></p>
<span><%= article.date.strftime('%B %e, %Y') %></span>
</div>
</a>
</li>
<% end %>
<ul class="paginate">
<% if paginate && num_pages > 1 %>
<% if prev_page %>
<p class="previous"><%= link_to 'Previous page', prev_page %></p>
<% end %>
<% end %>
<% if paginate %>
<% if next_page %>
<p class="next "><%= link_to 'Next page', next_page %></p>
<% end %>
<% end %>
</ul>
</ul>
</div>
</div>
任何提示都可能是问题所在,这将导致无论如何显示所有文章,将受到高度赞赏!在此先感谢:)
答案 0 :(得分:1)
那不是因为您使用blog.articles.each而应该使用page_articles吗?
我认为您必须更改blog.articles.each(文章总数),并使用类似<% page_articles.each do |article| %>
的方法来获取您想要在页面上显示的文章数。