【问题标题】:Jekyll filter to remove pages from site.pages based on page.url?Jekyll 过滤器根据 page.url 从 site.pages 中删除页面?
【发布时间】:2015-01-16 17:42:35
【问题描述】:

在为我的(非 github)Jekyll 站点生成 Google 站点地图时,我想根据页面 URL(或文件名)排除某些文件。在 shell 中,类似

site.pages | grep -v forbidden_name

在 Liquid 中,我想象一个类似的签名

site.pages | exclude 'url', forbidden_name

在相关说明中,是否有标准、内置过滤器、标签和生成器的目录?比grep -Rl register_filter ~/.rvm/gems 更方便的东西?

【问题讨论】:

  • 你想要简单还是插件方式?
  • 简单的或现有的插件。我已经知道如何编写这样的过滤器,它看起来如此简单和基本,我不敢相信它不存在。

标签: jekyll jekyll-extensions


【解决方案1】:

你可以试试

{% for p in site.pages %}
    {% if p.url contains 'ca' %}
        {% comment %}Do nothing{% endcomment %}
    {% else %}
        {{ p.title }}
    {% endif %}
{% endfor %}

一个不区分大小写且没有通配符的小技巧。

我在 Github 上创建了一个 list of tags and filters

【讨论】:

  • 不敢相信这个答案没有得到任何支持。这是正确的答案。赞成它。
猜你喜欢
  • 2023-02-26
  • 1970-01-01
  • 1970-01-01
  • 2020-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-28
  • 1970-01-01
相关资源
最近更新 更多