使用docpad的动态类别

时间:2013-07-31 08:54:37

标签: docpad

我的博客中有以下帖子:

的src /文件/帖/ foo.html.md

---
category: cooking
---

的src /文件/帖/ bar.html.md

---
category: programmation
---

我想生成以下路线:

http://example.org/cooking/
http://example.org/programmation/

每条路线的集合仅包含所选类别中的帖子。这些帖子仍然在标准位置:

http://example.org/posts/foo.html
http://example.org/posts/bar.html

奖励点:我还希望能够在我的布局中列出类别。类似的东西:

<% for cat in @getCategories() %>
    <a href="<%= cat.route %>"><%= cat.name %></a>
<% endfor %>

是否有一个已经存在的插件可以提供这些功能?如果没有,开始实施它的最佳方法是什么?

我在this answer中看到了setFilter方法,但在解析每个帖子以获取类别后,我仍然在努力寻找如何生成新网页。

如果无法实现动态页面生成(我可以理解,因为它需要按特定顺序解析页面),配置中的静态数组会更容易吗?

2 个答案:

答案 0 :(得分:1)

看看这个相关的插件:

https://github.com/docpad/docpad-plugin-related

据我所知,它不会自动为您生成标签页,但这是一个良好的开端。

答案 1 :(得分:0)

我能够使用标签插件做同样的事情:https://github.com/rantecki/docpad-plugin-tagging

它会自动为您使用的每个标记创建视图。列出类别也很简单。这是我所拥有的,使用选择框:

<select ONCHANGE="location = this.options[this.selectedIndex].value;">
<option value="">Choose</option>
<% for tag, data of @getTagCloud(): %>
<option value="<%= data.url %>">
<%= tag %>
</option>
<% end %>
</select>