在Wintersmith中,默认博客模板会根据内容/文章/< article> /index.md生成帖子。这很好,因为它允许文章中包含图像等相关文件。但实际上,大多数“博客帖子”只是与模板相关的文本内容。必须创建子目录是一个小麻烦,如果在选项卡式编辑器中编辑多个条目,那么所有名为index.md
的内容都很烦人。
站点生成器将吐出articles / basic-post.html文件,但不会在生成的索引或归档页面中包含这些文件。如何在不破坏任何东西的情况下让后者工作?
这可能是也可能不是一个简单的问题,但我是Wintersmith的新手,并没有看到如何做到这一点。我不确定它是否像编辑默认的paginator一样微不足道(我不习惯CoffeeScript,也许是时候解决这个问题了:)
在paginator.coffee中:
getArticles = (contents) ->
# helper that returns a list of articles found in *contents*
# note that each article is assumed to have its own directory in the articles directory
articles = contents[options.articles]._.directories.map (item) -> item.index
articles.sort (a, b) -> b.date - a.date
return articles
这看起来像是一个地方,但是直接编辑插件似乎是一个坏主意,以便将来可能的更新工作。
Wintersmith真是太棒了。
答案 0 :(得分:3)
你是对的:问题在于paginator
插件。
Wintersmith将不断观察contents
文件夹,构建一个ContentTree
数组。
该objet数组将包含contents
中每个文件和文件夹的描述符。
getArticles
只是过滤了这些可能的候选者,您只需要对其进行增强,以便在contents/articles
文件夹中获得简单的降价文件。
getArticles = (contents) ->
# helper that returns a list of articles found in *contents*
# include articles with dedicated directory
articles = contents[options.articles]._.directories.map (item) -> item.index
# add articles that are in the *contents/articles* folder
articles = articles.concat contents[options.articles]._.pages
articles.sort (a, b) -> b.date - a.date
return articles