Maxkore-Geek-Blog-docs

# 📄 首页显示调整指南

## 一、每页显示多少篇文章

Hexo默认一页显示10篇文章,我觉得太多了,改成5篇刚好。

### 修改方法

打开博客根目录的 \_config.yml,在最下面找到(或自己添加)index\_generator


\# 首页设置

index\_generator:

  path: ''

  per\_page: 5      # 一页显示5篇(默认10)

  order\_by: -date  # 按时间倒序(新的在前)

**参数说明**:

- per\_page: 5:想显示几篇就填几

- per\_page: 0:所有文章都在一页,不分页

- order\_by: -date:这个保持默认就行

改完保存,然后重新部署:


hexo clean \&\& hexo g -d

等两分钟刷新首页,就能看到效果了。

### 我踩的坑

第一次改完发现没变化,找了半天才发现改的是主题的配置文件。

**注意:一定要改根目录的 \_config.yml,不是 themes/next/\_config.yml!**


## 二、把重要文章置顶

有些文章希望一直显示在最前面,比如这篇文档库的索引。

### 方法1:直接加参数(最简单)

在需要置顶的文章开头,加上一行 sticky


---

title: 这是一篇很重要的文章

date: 2026-02-23

tags: \[教程]

sticky: 100  # 数字越大越靠前

---

我一般这样分配:

- 最重要的置顶文章:sticky: 100

- 次重要的:sticky: 50

- 不置顶的:不加这一行

### 方法2:装插件(如果方法1没用)

如果加了 sticky 没效果,可以装个插件:


npm install hexo-generator-index-pin-top --save

装完后在文章开头改成:


pin: true

### 多篇文章置顶的排序规则

sticky值 显示位置

|———-|———-|

200 第1位
150 第2位
100 第3位
不加 按时间排

## 三、控制首页显示的文章摘要

文章太长的话首页会很乱,有三种办法控制摘要长度。

### 方法1:手动划断(我最推荐)

在文章里想截断的地方加上 <!-- more -->


---

title: 文章标题

date: 2026-02-23

---



这里是我想在首页显示的部分,一般写一两句吸引人的话。



<!-- more -->



这里是正文,点击“阅读全文”后才能看到,可以写很长。

**优点**:想在哪断就在哪断,非常灵活

**缺点**:每篇文章都要手动加

### 方法2:自动截取固定长度

如果懒得每篇都加,可以统一设置截取长度。

打开 themes/next/\_config.yml


\# 自动截取摘要

auto\_excerpt:

&nbsp; enable: true

&nbsp; length: 150  # 截取150个字符

**优点**:一次性设置,不用管每篇文章

**缺点**:截取位置可能不自然,有时候会断在半句话

### 方法3:用description字段

在文章开头加 description


---

title: 文章标题

date: 2026-02-23

description: 这是我自己写的摘要,会显示在首页。

---

**优点**:可以精确控制显示什么

**缺点**:每篇文章都要写


## 四、我的配置方案

折腾了半天,最后用的这套组合:


\# \_config.yml

index\_generator:

&nbsp; per\_page: 8          # 一页8篇,不会太长也不会太短

&nbsp; order\_by: -date



\# 置顶文章:这篇文档库索引

sticky: 100



\# 摘要:手动用 <!-- more --> 控制

这样首页看起来清爽多了,重要的文章也能突出显示。


## 五、常见问题

### Q1:置顶没生效怎么办?

先试试 hexo clean 清缓存,还不行就装插件。

### Q2:分页设置没变化?

确认改的是根目录的 \_config.yml,不是主题的。

改完要重新部署,等两分钟再看。

### Q3:摘要截取乱码?

中文截取偶尔会有乱码,用 <!-- more --> 最保险。