和/或 Jekyll 上的 where_exp 表达式

2024-01-11

我正在尝试使用where_exp根据两个类别过滤 Jekyll 页面or操作员:

{% assign sortedPages = site.pages | sort:"date" | reverse | where_exp:"page","page.categories contains 'design-pattern'" %}

但我收到这个错误:

预期是 end_of_string 但找到了管道

Ar or/and运营商真的支持吗?我不知道如何使用过滤页面where_exp如我的代码片段所示。


我已经设法通过一些解决方法解决了我的问题...这不是一个非常优雅的解决方案,但由于 Jekyll 并不是要创建实际的软件架构...目前,它工作完美:

{% assign patterns = "" | split,"" %}

{% for page in site.pages %}
{% if page.categories contains "design-pattern" or page.categories contains "anti-pattern" %}
{% assign patterns = patterns | push:page %}
{% endif %}
{% endfor %}

{% assign sortedPages = patterns | sort:"date" | reverse %}
  1. 我创建一个空数组。
  2. 我循环遍历所有页面,并按两个可能的类别过滤它们。
  3. 我推送满足整个条件的页面。
  4. 一旦获得过滤后的页面数组,我就会对其进行排序和反转。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

和/或 Jekyll 上的 where_exp 表达式 的相关文章

随机推荐