ruby - Jekyll front matter 输出计数

标签 ruby jekyll

我正在从事 jekyll 主题设计,我有 .yml 文件存储数据(文件名:games.yml),数据如下

---
- name: NFS
  year: 2015
  id: NFS15
  link: http://www.ecample.com/
  date: August 3-4, 2017
  categories: Racing

etc

我正在尝试输出侧边栏中的类别以及每个类别中的计数。例如:

Racing (3)
Shooter (6)
Sports (5)
etc

我怎样才能做到这一点?

我的 HTML 输出代码:

      <a href="javascript:;" class="categories-list-item" cate="All">
        All<span class="my-badge"> {{site.data.games | size}}</span>
      </a>
      {% for cat in site.data.games %}
        <a href="javascript:;" class="categories-list-item" cate="{{ cat.categories}}">
          {{ cat.categories }} <span class="my-badge">{{ cat.categories | size }}</span>
        </a>
      {% endfor %}

现在我得到了整个类别列表的结果,例如:

Racing
Racing
Racing
Shooter 
Shooter 
Shooter... 

依此类推

最佳答案

您可以使用来自 Jekyll 的 group_by_exp 原生过滤器轻松实现此目的:

{% assign games = site.data.games | group_by_exp: "game", "game.categories" %}
{% for category in games %}
  <a href="javascript:;" class="categories-list-item" cate="{{ category.name }}">
    {{ category.name }} <span class="my-badge">{{ category.size }}</span>
  </a>
{% endfor %}

关于ruby - Jekyll front matter 输出计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44362871/

相关文章:

ruby - EventMachine 重新连接问题

ruby-on-rails - Rails 管理未定义方法 `new' 为 nil :NilClass error

ruby-on-rails - Ruby:将散列插入数组?

css - Jekyll github pages 站点忽略 .css

ruby - 从 Liquid 和 Markdown 而不是 HTML 生成 Jekyll 页面

ruby-on-rails - rails 3.1 : Auto Select Value Passed From Param to Associated Form

ruby-on-rails - Phusion Passenger 不在 Apache 上工作

html - 使用 Jekyll 构建的 GitHub 页面上的下拉框显示不正确

github - 如何将 Octopress 博客部署到现有的 gh-pages 静态站点?

html - Jekyll:动态 CSS 类的 Liquid 自定义输出语句