Package Exports
- vuepress-plugin-blog-multidir
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (vuepress-plugin-blog-multidir) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
vuepress-plugin-blog-multidir
A VuePress blog plugin which Support multiple folders
Build your blog through multiple folders
Installation
yarn add vuepress-plugin-blog-multidir
// or
npm i vuepress-plugin-blog-multidir
Usage
module.exports = {
plugins: [
'blog-multidir'
]
}
Options
aliasesRoot
- Type:
string
- default:
:root
Can't have the same name as your folder.
For internal use only.
categoryIndexPageUrl
- Type:
string
- Default:
/category/
tagIndexPageUrl
- Type:
string
- Default:
/tag/
categoryLayout
- Type:
string
- Default:
Tag
tagLayout
- Type:
string
- Default:
Tag
postLayout
- Type:
string
- Default:
Page
postsDir
- Type:
string
,array
,Object
- Default:
posts
Configures the permalink
generated for you folder.
example
{
postsDir: 'posts'
// or
postsDir: ['posts1', 'posts2', 'posts3']
// or { dir: permalink }
postsDir: {
posts1: ':year',
posts2: ':month',
posts3: ':slug'
}
}
permalink
- Type:
string
,boolean(false)
- Default:
false
See Permalinks for a list of valid variables.
postsSorter
- Type:
function
- Default:
((prev, next) => {
const prevTime = new Date(prev.frontmatter.date).getTime()
const nextTime = new Date(next.frontmatter.date).getTime()
return prevTime - nextTime > 0 ? -1 : 1
})
paginationDir
- Type:
boolean
,string
,array
- Default:
true
example
{
paginationDir: true // Enable all paging
// or
paginationDir: false // Cancel all pages
// or
paginationDir: 'posts' // Enable single paging for `posts` folder
// or
paginationDir: ['posts1', 'posts2'] // Enable multiple paging
}
paginationLimit
- Type:
number
- Default:
12
paginatioPath
- Type:
string
- Default:
page/
computed
$pluginConfig
Plugin config information
$tags
Page information sorted by tags
$categories
Page information sorted by categories
$lists
Page information sorted by folders
$list
If you are in the pagination page. you can get
{
pageKeys,
pagination,
path,
posts
}
or If you are in the post page. you can get
{
index,
total,
dir,
lastPost,
nextPost
}
from this.$list
attention
You don't need to create a index.md(or README.md)
file in a folder that needs Pagination
+- blog
+- posts
+- test.md
...
...
+- about
+- index.md
or set layout
// about -> index.md
---
layout: Page
---
You need to use display
to control where the current article is displayed
// posts -> test.md
---
display: home
---
A list of home pages will displayed.
// posts -> test.md
---
display: none
---
It will not be displayed.
However, you can still access it through the right path.
If you are in the pagination page. you can get the current page by this.$route.meta.current
.
License
Keywords
vue vuepress plugin blog blog-multidir