About my blog use hexo plugin
hexo-hide-posts
hexo-hide-posts is A plugin to hide specific posts from your Hexo blog and make them only accessible by links
Installation
npm install hexo-hide-posts --save
Usage
Add hidden: true
to the front-matter of posts which you want to hide.
e.g. Edit source/_posts/lorem-ipsum.md
:
---
title: 'Lorem Ipsum'
date: '2019/8/10 11:45:14'
hidden: true
---
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
This post will not be shown anywhere, but you can still access it by https://hexo.test/lorem-ipsum/
. (If you want to completely prevent a post from rendering, just set it as a draft.)
To get a list of hidden posts, you can run hexo hidden:list
from command line.
For developers, all_posts
and hidden_posts
added to Local Variables may be useful.
Config
In your site's _config.yml
:
# hexo-hide-posts
hide_posts:
enable: true
# Change the filter name to fit your need
filter: hidden
# Generators which you want to expose all posts (include hidden ones) to.
# Common generators: index, tag, category, archive, sitemap, feed, etc.
public_generators: []
# Add "noindex" meta tag to prevent hidden posts from being indexed by search engines
noindex: true
hexo-generator-restful
hexo-generator-restful is generate restful json data for Hexo plugins.
Install
npm install hexo-generator-restful --save
Config Plugin
以下为默认配置,属性值为 false
表示不生成。
restful:
# site 可配置为数组选择性生成某些属性
# site: ['title', 'subtitle', 'description', 'author', 'since', email', 'favicon', 'avatar']
site: true # hexo.config mix theme.config
posts_size: 10 # 文章列表分页,0 表示不分页
posts_props: # 文章列表项的需要生成的属性
title: true
slug: true
date: true
comments: true
path: true
excerpt: false
cover: true # 封面图,取文章第一张图片
content: false
keywords: false
tag: true
use_category_slug: false # Use slug for filename of category data
tag: true # 标签数据
use_tag_slug: false # Use slug for filename of tag data
post: true # 文章数据
pages: false # 额外的 Hexo 页面数据,如 About
Get Hexo Config
获取所有 Hexo 配置(站点配置和主题配置)。
Request
GET /api/site.json
Response
Get Posts
如果配置 posts_size: 0
则不分页,以下请求会获取全部文章。
Request
GET /api/posts.json
Response
示例为分页配置下的数据,会包含分页属性 total
、pageSize
、pageCount
,不分页的数据不包含这三项。