--- title: 文章 description: 文章 - PostFinder --- import CategoryVo from "../vo/_CategoryVo.md"; import TagVo from "../vo/_TagVo.md"; import PostVo from "../vo/_PostVo.md"; import ContentVo from "../vo/_ContentVo.md" import ContributorVo from "../vo/_ContributorVo.md" import ListedPostVo from "../vo/_ListedPostVo.md" ## getByName(postName) ```js postFinder.getByName(postName); ``` ### 描述 根据 `metadata.name` 获取文章。 ### 参数 1. `postName:string` - 文章的唯一标识 `metadata.name`。 ### 返回值 [#PostVo](#postvo) ### 示例 ```html
``` ## content(postName) ```js postFinder.content(postName); ``` ### 描述 根据文章的 `metadata.name` 单独获取文章内容。 ### 参数 1. `postName:string` - 文章的唯一标识 `metadata.name`。 ### 返回值 [#ContentVo](#contentvo) ### 示例 ```html
``` ## cursor(postName) ```js postFinder.cursor(postName); ``` ### 描述 根据文章的 `metadata.name` 获取相邻的文章(上一篇 / 下一篇)。 ### 参数 1. `postName:string` - 文章的唯一标识 `metadata.name`。 ### 返回值 [#NavigationPostVo](#navigationpostvo) ### 示例 ```html title="/templates/post.html"
``` ## listAll() ```js postFinder.listAll(); ``` ### 描述 获取所有文章。 ### 参数 无 ### 返回值 List<[#ListedPostVo](#listedpostvo)> ### 示例 ```html ``` ## list(page,size) ```js postFinder.list(page, size); ``` ### 描述 根据分页参数获取文章列表。 ### 参数 1. `page:int` - 分页页码,从 1 开始 2. `size:int` - 分页条数 ### 返回值 [#ListResult](#listresultlistedpostvo) ### 示例 ```html ``` ## listByCategory(page,size,categoryName) ```js postFinder.listByCategory(page, size, categoryName); ``` ### 描述 根据分类标识和分页参数获取文章列表。 ### 参数 1. `page:int` - 分页页码,从 1 开始 2. `size:int` - 分页条数 3. `categoryName:string` - 文章分类唯一标识 `metadata.name` ### 返回值 [#ListResult](#listresultlistedpostvo) ### 示例 ```html ``` ## listByTag(page,size,tag) ```js postFinder.listByTag(page, size, tag); ``` ### 描述 根据标签标识和分页参数获取文章列表。 ### 参数 1. `page:int` - 分页页码,从 1 开始 2. `size:int` - 分页条数 3. `tag:string` - 文章分类唯一标识 `metadata.name` ### 返回值 [#ListResult](#listresultlistedpostvo) ### 示例 ```html
``` ## archives(page,size) ```js postFinder.archives(page, size); ``` ### 描述 根据分页参数获取文章归档列表。 ### 参数 1. `page:int` - 分页页码,从 1 开始 2. `size:int` - 分页条数 ### 返回值 [#ListResult](#listresultpostarchivevo) ### 示例 ```html

``` ## archives(page,size,year) ```js postFinder.archives(page, size, year); ``` ### 描述 根据年份和分页参数获取文章归档列表。 ### 参数 1. `page:int` - 分页页码,从 1 开始 2. `size:int` - 分页条数 3. `year:string` - 年份 ### 返回值 [#ListResult](#listresultpostarchivevo) ### 示例 ```html

``` ## archives(page,size,year,month) ```js postFinder.archives(page, size, year, month); ``` ### 描述 根据年月和分页参数获取文章归档列表。 ### 参数 1. `page:int` - 分页页码,从 1 开始 2. `size:int` - 分页条数 3. `year:string` - 年份 4. `month:string` - 月份 ### 返回值 [#ListResult](#listresultpostarchivevo) ### 示例 ```html

``` ## 类型定义 ### CategoryVo ### TagVo ### ContributorVo ### PostVo - [#CategoryVo](#categoryvo) - [#TagVo](#tagvo) - [#ContributorVo](#contributorvo) - [#ContentVo](#contentvo) ### ContentVo ### NavigationPostVo ```json title="NavigationPostVo" { "previous": "#PostVo", // 上一篇文章 "current": "#PostVo", // 当前文章 "next": "#PostVo" // 下一篇文章 } ``` - [#PostVo](#postvo) ### ListedPostVo - [#CategoryVo](#categoryvo) - [#TagVo](#tagvo) - [#ContributorVo](#contributorvo) ### ListResult ```json title="ListResult" { "page": 0, // 当前页码 "size": 0, // 每页条数 "total": 0, // 总条数 "items": "List<#ListedPostVo>", // 文章列表数据 "first": true, // 是否为第一页 "last": true, // 是否为最后一页 "hasNext": true, // 是否有下一页 "hasPrevious": true, // 是否有上一页 "totalPages": 0 // 总页数 } ``` - [#ListedPostVo](#listedpostvo) ### PostArchiveVo ```json title="PostArchiveVo" { "year": "string", "months": [ { "month": "string", "posts": "#ListedPostVo" } ] } ``` - [#ListedPostVo](#listedpostvo) ### ListResult ```json title="ListResult" { "page": 0, // 当前页码 "size": 0, // 每页条数 "total": 0, // 总条数 "items": "List<#PostArchiveVo>", // 文章归档数据 "first": true, // 是否为第一页 "last": true, // 是否为最后一页 "hasNext": true, // 是否有下一页 "hasPrevious": true, // 是否有上一页 "totalPages": 0 // 总页数 } ``` - [#PostArchiveVo](#postarchivevo)