如果你经常使用静态网站生成器Wintersmith,你可能会遇到需要对文章进行分类的情况。这时候,一个名为wintersmith-categorizer的npm包可能能给你提供帮助。这篇文章将详细介绍npm包wintersmith-categorizer的使用方法,希望对你有所帮助。
简介
wintersmith-categorizer是一个Wintersmith插件,它可以将文章按照声明的分类整理到各自的目录中。此外,它还可以生成一个网站分类索引页面。
安装
使用npm进行安装:
npm install wintersmith-categorizer --save-dev
使用
- 在你的Wintersmith项目的config文件中添加该插件:
{ "plugins": [ "wintersmith-categorizer" ] }
- 在你的文章的metadata中声明分类信息:
--- title: My blog post template: article.jade category: programming tags: javascript, angular ---
在metadata中,添加了"classify"属性的value即是该文章所属的类别。该属性值可以是一个字符或是包含标点符号/空格的字符串。
3.(可选)你可以在你的jade templage中添加链接到分类索引页面的链接:
ul li a(href='/categories/programming.html') Programming
- 生成静态网站:
$ wintersmith build
在执行完build命令后,你会发现生成了一个名为“categories”的文件夹,其中包含分类目录和分类索引页面。所有文章按照分类分配到各自的分类目录中。你可以通过访问“yourwebsite.com/categories/programming.html”来查看programming类别的文章。
参数
wintersmith-categorizer插件提供了几个可配置参数:
output
:用于存储分类目录的文件夹名称,默认为"categories"indexTemplate
:分类索引页面的模板名称,默认为"categoryIndex.jade"categoryTemplate
:分类目录中页面的模板名称,默认为"category.jade"
你可以在你的config.json文件中添加以下代码,然后更改对应的参数来修改插件的默认设置:
-- -------------------- ---- ------- - ---------- - -------------------------- - --------- --------------- ---------------- ----------------------- ------------------- ----------------- - - -
示例代码
下面是一个完整的静态网页生成代码:
Article.md
--- title: My blog post template: article.jade category: programming tags: javascript, angular ---
_tpl/category.jade
h1= category ul each file in files li a(href= file.url)= file.title
_tpl/categoryIndex.jade
h1 All categories ul each category in categories li a(href= "/categories/" + category + ".html")= category
config.json
{ "locals": { "url": "http://localhost:8080" }, "plugins": [ "wintersmith-categorizer" ] }
在运行完上述代码后,你会在youwebsite.com/categories中看到静态网页,其中含有"programming"分类的文章。这个示例完整的实现了wintersmith-categorizer的使用,并可以作为你实现该插件的参考。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6006710f8dd3466f61ffe24b