升级Hexo3.X后发现Landscape-plus主题的分页出现一些问题,由于该主题的GitHub项目也处于长期未维护状态,所以只能自己排查修改。

一、Archive分页问题

进入Archives页面后,发现文章列表没有以标题“方块”展示,而是和主页一样以标题和内容展示:

对于这种情况,需要修改Hexo根目录的_config.yml,加入或修改参数如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# Archives
## 2: Enable pagination
## 1: Disable pagination
## 0: Fully Disable
archive: 1
category: 1
tag: 1
#主页每页显示文章数
index_generator:
per_page: 10
#archive分页每页显示文章数
archive_generator:
per_page: 30
#tag分页每页显示文章数
tag_generator:
per_page: 30
#category分页每页显示文章数
category_generator:
per_page: 30

修改完成后,预览Archives页面正常:

二、Tag与Category分页问题

问题一中配置所示,设置了tag和category分页显示文章数为30,当该分页下文章总数超过这个设置时,正确的显示应该有分页跳转菜单,但目前Landscape-plus的版本存在问题,在这条issues中,也有网友提出了临时的解决方法,但要彻底从根本上解决问题,还需要修改代码:

打开 \themes\landscape-plus\layout\_partial\archive.ejs

如下图所示,加入红框中的代码:

代码可复制:

1
2
3
4
5
6
7
8
<% if (page.total > 1){ %>
<nav id="page-nav">
<%- paginator({
prev_text: '&laquo; Prev',
next_text: 'Next &raquo;'
}) %>
</nav>
<% } %>

修改完成后,预览Tag或category页面都恢复正常:

最后附上修改版的LandScape-Plus