hexo 学习 0011:hexo 分页配置

Hexo 的分页功能是处理大量文章展示的关键机制,它决定了文章列表如何被分割以及分页链接的 URL 结构。通过简单的配置,你可以控制每页的文章数量以及分页路径的命名。

核心配置项说明

per_page
这个参数用于设置每页显示的文章数量。默认值通常为 10。如果你希望将所有文章都展示在首页,不进行分页处理,可以将此值设置为 0。在设置数值时,建议考虑页面加载速度,数值过大可能会导致首页加载缓慢。

pagination_dir
这个参数用于定义分页链接的 URL 格式。它决定了分页路径的前缀名称。默认值为 page。通过修改这个值,你可以自定义分页 URL 的结构,使其更符合你的网站命名习惯或 SEO 需求。

配置示例

以下是一个典型的分页配置示例,展示了不同 pagination_dir 设置产生的不同 URL 效果:

1
2
3
4
5
6
7
8
9
10
11
12
13
# 每页显示 5 篇文章,分页路径前缀为 'page'
per_page: 5
pagination_dir: page
# 生成的第二页 URL 示例:https://example.com/page/2

# 将分页路径前缀修改为 'awesome-page'
per_page: 5
pagination_dir: awesome-page
# 生成的第二页 URL 示例:https://example.com/awesome-page/2

# 禁用分页功能,所有文章显示在首页
per_page: 0
pagination_dir: page

概念辨析:pagination_dir 与 index_generator.path

在 Hexo 配置中,pagination_dirindex_generator.path 都与 URL 路径有关,但它们的作用完全不同,容易混淆:

  • index_generator.path:控制的是博客首页索引的根路径。例如,如果你将其设置为 blog,那么你的文章列表首页将变为 https://example.com/blog/
  • pagination_dir:控制的是分页部分的路径前缀。它是在首页路径之后附加的部分。例如,在默认配置下,第二页的路径是 https://example.com/page/2,这里的 page 就是由 pagination_dir 决定的。

简单来说,index_generator.path 决定了“家”在哪里,而 pagination_dir 决定了“翻页”时的路标是什么。

注意事项

  • SEO 友好性:虽然可以将 pagination_dir 修改为任意字符串(如 plist),但建议保持其具有描述性(如 pagearchive),以便搜索引擎更好地理解页面结构。
  • 配置生效:修改 per_pagepagination_dir 后,必须重新生成站点(hexo clean && hexo g),否则旧的分页链接可能仍然存在,导致 404 错误。
  • 数值设置per_page 设置为 0 虽然能禁用分页,但如果文章数量巨大,会导致首页 HTML 文件体积过大,严重影响加载性能,建议仅在文章极少或特殊需求时使用。