jekyll-docs 3.9.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/jekyll-docs.rb +3 -3
- data/site/404.html +10 -7
- data/site/css/screen.css +3 -1
- data/site/css/screen.css.map +28 -0
- data/site/docs/assets/index.html +412 -453
- data/site/docs/code_of_conduct/index.html +447 -501
- data/site/docs/collections/index.html +487 -674
- data/site/docs/community/bug/index.html +603 -0
- data/site/docs/community/index.html +635 -0
- data/site/docs/conduct/index.html +447 -515
- data/site/docs/configuration/default/index.html +682 -0
- data/site/docs/configuration/environments/index.html +641 -0
- data/site/docs/configuration/front-matter-defaults/index.html +738 -0
- data/site/docs/configuration/incremental-regeneration/index.html +631 -0
- data/site/docs/configuration/index.html +405 -1230
- data/site/docs/configuration/liquid/index.html +616 -0
- data/site/docs/configuration/markdown/index.html +766 -0
- data/site/docs/configuration/options/index.html +1011 -0
- data/site/docs/configuration/webrick/index.html +615 -0
- data/site/docs/continuous-integration/buddyworks/index.html +393 -479
- data/site/docs/continuous-integration/circleci/index.html +465 -481
- data/site/docs/continuous-integration/travis-ci/index.html +450 -507
- data/site/docs/contributing/index.html +425 -514
- data/site/docs/datafiles/index.html +411 -453
- data/site/docs/deployment-methods/index.html +9 -871
- data/site/docs/deployment/automated/index.html +663 -0
- data/site/docs/deployment/index.html +607 -0
- data/site/docs/deployment/manual/index.html +631 -0
- data/site/docs/deployment/third-party/index.html +639 -0
- data/site/docs/drafts/index.html +9 -634
- data/site/docs/extras/index.html +9 -687
- data/site/docs/front-matter/index.html +799 -0
- data/site/docs/frontmatter/index.html +9 -819
- data/site/docs/github-pages/index.html +407 -475
- data/site/docs/history/index.html +1370 -1154
- data/site/docs/home/index.html +9 -627
- data/site/docs/includes/index.html +425 -501
- data/site/docs/index.html +630 -9
- data/site/docs/installation/index.html +403 -540
- data/site/docs/installation/macos/index.html +716 -0
- data/site/docs/installation/other-linux/index.html +613 -0
- data/site/docs/installation/ubuntu/index.html +623 -0
- data/site/docs/installation/windows/index.html +733 -0
- data/site/docs/layouts/index.html +726 -0
- data/site/docs/liquid/filters/index.html +1169 -0
- data/site/docs/liquid/index.html +615 -0
- data/site/docs/liquid/tags/index.html +728 -0
- data/site/docs/maintaining/affinity-team-captain/index.html +395 -479
- data/site/docs/maintaining/avoiding-burnout/index.html +391 -475
- data/site/docs/maintaining/becoming-a-maintainer/index.html +391 -475
- data/site/docs/maintaining/index.html +391 -486
- data/site/docs/maintaining/merging-a-pull-request/index.html +406 -490
- data/site/docs/maintaining/releasing-a-new-version/index.html +409 -485
- data/site/docs/maintaining/reviewing-a-pull-request/index.html +392 -476
- data/site/docs/maintaining/special-labels/index.html +397 -481
- data/site/docs/maintaining/triaging-an-issue/index.html +394 -478
- data/site/docs/markdown-101/index.html +601 -0
- data/site/docs/migrations/index.html +396 -440
- data/site/docs/pages/index.html +408 -482
- data/site/docs/pagination/index.html +450 -509
- data/site/docs/permalinks/index.html +552 -587
- data/site/docs/plugins/commands/index.html +656 -0
- data/site/docs/plugins/converters/index.html +685 -0
- data/site/docs/plugins/filters/index.html +624 -0
- data/site/docs/plugins/generators/index.html +697 -0
- data/site/docs/plugins/hooks/index.html +838 -0
- data/site/docs/plugins/index.html +415 -1565
- data/site/docs/plugins/installation/index.html +681 -0
- data/site/docs/plugins/tags/index.html +699 -0
- data/site/docs/plugins/your-first-plugin/index.html +741 -0
- data/site/docs/posts/index.html +491 -627
- data/site/docs/quickstart/index.html +9 -645
- data/site/docs/resources/index.html +9 -761
- data/site/docs/ruby-101/index.html +640 -0
- data/site/docs/sites/index.html +9 -696
- data/site/docs/static-files/index.html +401 -433
- data/site/docs/step-by-step/01-setup/index.html +771 -0
- data/site/docs/step-by-step/02-liquid/index.html +756 -0
- data/site/docs/step-by-step/03-front-matter/index.html +730 -0
- data/site/docs/step-by-step/04-layouts/index.html +770 -0
- data/site/docs/step-by-step/05-includes/index.html +768 -0
- data/site/docs/step-by-step/06-data-files/index.html +738 -0
- data/site/docs/step-by-step/07-assets/index.html +773 -0
- data/site/docs/step-by-step/08-blogging/index.html +835 -0
- data/site/docs/step-by-step/09-collections/index.html +932 -0
- data/site/docs/step-by-step/10-deployment/index.html +842 -0
- data/site/docs/structure/index.html +411 -430
- data/site/docs/support/index.html +392 -476
- data/site/docs/templates/index.html +9 -1232
- data/site/docs/themes/index.html +487 -521
- data/site/docs/troubleshooting/index.html +443 -520
- data/site/docs/upgrading/0-to-2/index.html +437 -523
- data/site/docs/upgrading/2-to-3/index.html +422 -507
- data/site/docs/upgrading/3-to-4/index.html +765 -0
- data/site/docs/upgrading/index.html +395 -478
- data/site/docs/usage/index.html +409 -506
- data/site/docs/variables/index.html +504 -652
- data/site/docs/windows/index.html +9 -784
- data/site/feed.xml +269 -188
- data/site/feed/release.xml +324 -0
- data/site/fonts/lato-v14-latin-300.woff +0 -0
- data/site/fonts/lato-v14-latin-300.woff2 +0 -0
- data/site/fonts/lato-v14-latin-300italic.woff +0 -0
- data/site/fonts/lato-v14-latin-300italic.woff2 +0 -0
- data/site/fonts/lato-v14-latin-700.woff +0 -0
- data/site/fonts/lato-v14-latin-700.woff2 +0 -0
- data/site/fonts/lato-v14-latin-700italic.woff +0 -0
- data/site/fonts/lato-v14-latin-700italic.woff2 +0 -0
- data/site/fonts/lato-v14-latin-900.woff +0 -0
- data/site/fonts/lato-v14-latin-900.woff2 +0 -0
- data/site/fonts/lato-v14-latin-900italic.woff +0 -0
- data/site/fonts/lato-v14-latin-900italic.woff2 +0 -0
- data/site/fonts/lato-v14-latin-italic.woff +0 -0
- data/site/fonts/lato-v14-latin-italic.woff2 +0 -0
- data/site/fonts/lato-v14-latin-regular.woff +0 -0
- data/site/fonts/lato-v14-latin-regular.woff2 +0 -0
- data/site/help/index.html +9 -247
- data/site/img/forestry-logo.svg +19 -0
- data/site/img/jekyll-og.png +0 -0
- data/site/img/spacer.gif +0 -0
- data/site/index.html +56 -29
- data/site/jekyllconf/index.html +62 -35
- data/site/latest_version.txt +1 -1
- data/site/news/2013/05/05/jekyll-1-0-0-released/index.html +180 -115
- data/site/news/2013/05/08/jekyll-1-0-1-released/index.html +182 -117
- data/site/news/2013/05/12/jekyll-1-0-2-released/index.html +183 -118
- data/site/news/2013/06/07/jekyll-1-0-3-released/index.html +184 -119
- data/site/news/2013/07/14/jekyll-1-1-0-released/index.html +183 -118
- data/site/news/2013/07/24/jekyll-1-1-1-released/index.html +180 -115
- data/site/news/2013/07/25/jekyll-1-0-4-released/index.html +182 -117
- data/site/news/2013/07/25/jekyll-1-1-2-released/index.html +182 -117
- data/site/news/2013/09/06/jekyll-1-2-0-released/index.html +185 -120
- data/site/news/2013/09/14/jekyll-1-2-1-released/index.html +183 -118
- data/site/news/2013/10/28/jekyll-1-3-0-rc1-released/index.html +180 -115
- data/site/news/2013/11/04/jekyll-1-3-0-released/index.html +189 -124
- data/site/news/2013/11/26/jekyll-1-3-1-released/index.html +181 -116
- data/site/news/2013/12/07/jekyll-1-4-0-released/index.html +181 -116
- data/site/news/2013/12/09/jekyll-1-4-1-released/index.html +180 -115
- data/site/news/2013/12/16/jekyll-1-4-2-released/index.html +182 -117
- data/site/news/2014/01/13/jekyll-1-4-3-released/index.html +181 -116
- data/site/news/2014/03/24/jekyll-1-5-0-released/index.html +181 -116
- data/site/news/2014/03/27/jekyll-1-5-1-released/index.html +181 -116
- data/site/news/2014/05/06/jekyll-turns-2-0-0/index.html +184 -119
- data/site/news/2014/05/08/jekyll-2-0-3-released/index.html +180 -115
- data/site/news/2014/06/04/jekyll-stickers-1-dollar-stickermule/index.html +181 -116
- data/site/news/2014/06/28/jekyll-turns-21-i-mean-2-1-0/index.html +185 -120
- data/site/news/2014/07/01/jekyll-2-1-1-released/index.html +182 -117
- data/site/news/2014/07/29/jekyll-2-2-0-released/index.html +181 -116
- data/site/news/2014/08/10/jekyll-2-3-0-released/index.html +189 -124
- data/site/news/2014/09/09/jekyll-2-4-0-released/index.html +187 -122
- data/site/news/2014/11/05/jekylls-midlife-crisis-jekyll-turns-2-5-0/index.html +188 -123
- data/site/news/2014/11/09/jekyll-2-5-1-released/index.html +180 -115
- data/site/news/2014/11/12/jekyll-2-5-2-released/index.html +182 -117
- data/site/news/2014/12/17/alfredxing-welcome-to-jekyll-core/index.html +179 -114
- data/site/news/2014/12/22/jekyll-2-5-3-released/index.html +180 -115
- data/site/news/2015/01/20/jekyll-meet-and-greet/index.html +179 -114
- data/site/news/2015/01/24/jekyll-3-0-0-beta1-released/index.html +180 -115
- data/site/news/2015/02/26/introducing-jekyll-talk/index.html +180 -115
- data/site/news/2015/10/26/jekyll-3-0-released/index.html +185 -120
- data/site/news/2015/11/17/jekyll-3-0-1-released/index.html +184 -119
- data/site/news/2016/01/20/jekyll-3-0-2-released/index.html +182 -117
- data/site/news/2016/01/24/jekyll-3-1-0-released/index.html +186 -121
- data/site/news/2016/01/28/jekyll-3-1-1-released/index.html +183 -118
- data/site/news/2016/02/08/jekyll-3-0-3-released/index.html +181 -116
- data/site/news/2016/02/19/jekyll-3-1-2-released/index.html +182 -117
- data/site/news/2016/03/10/making-it-easier-to-contribute-to-jekyll/index.html +179 -114
- data/site/news/2016/04/19/jekyll-3-0-4-released/index.html +181 -116
- data/site/news/2016/04/19/jekyll-3-1-3-released/index.html +181 -116
- data/site/news/2016/04/26/jekyll-3-0-5-released/index.html +180 -115
- data/site/news/2016/05/18/jekyll-3-1-4-released/index.html +186 -121
- data/site/news/2016/05/18/jekyll-3-1-5-released/index.html +181 -116
- data/site/news/2016/05/19/jekyll-3-1-6-released/index.html +181 -116
- data/site/news/2016/06/03/update-on-jekyll-s-google-summer-of-code-projects/index.html +179 -114
- data/site/news/2016/07/26/jekyll-3-2-0-released/index.html +184 -119
- data/site/news/2016/08/02/jekyll-3-2-1-released/index.html +180 -115
- data/site/news/2016/08/24/jekyll-admin-initial-release/index.html +179 -114
- data/site/news/2016/10/06/jekyll-3-3-is-here/index.html +207 -142
- data/site/news/2016/11/14/jekyll-3-3-1-released/index.html +181 -116
- data/site/news/2017/01/18/jekyll-3-4-0-released/index.html +183 -118
- data/site/news/2017/03/02/jekyll-3-4-1-released/index.html +181 -116
- data/site/news/2017/03/09/jekyll-3-4-2-released/index.html +189 -124
- data/site/news/2017/03/21/jekyll-3-4-3-released/index.html +190 -125
- data/site/news/2017/06/15/jekyll-3-5-0-released/index.html +187 -122
- data/site/news/2017/07/17/jekyll-3-5-1-released/index.html +182 -117
- data/site/news/2017/08/12/jekyll-3-5-2-released/index.html +185 -120
- data/site/news/2017/09/21/jekyll-3-6-0-released/index.html +181 -116
- data/site/news/2017/10/19/diversity-open-source/index.html +181 -116
- data/site/news/2017/10/21/jekyll-3-6-2-released/index.html +183 -118
- data/site/news/2018/01/02/jekyll-3-7-0-released/index.html +184 -119
- data/site/news/2018/01/25/jekyll-3-7-2-released/index.html +189 -124
- data/site/news/2018/02/19/meet-jekyll-s-new-lead-developer/index.html +180 -115
- data/site/news/2018/02/24/jekyll-3-7-3-released/index.html +185 -120
- data/site/news/2018/04/19/development-update/index.html +699 -0
- data/site/news/2018/04/19/jekyll-3-8-0-released/index.html +715 -0
- data/site/news/2018/05/01/jekyll-3-8-1-released/index.html +182 -117
- data/site/news/2018/05/19/jekyll-3-8-2-released/index.html +181 -116
- data/site/news/2018/06/05/jekyll-3-8-3-released/index.html +183 -118
- data/site/news/2018/08/01/jekyll-sponsoring/index.html +748 -0
- data/site/news/2018/09/19/security-fixes-for-3-6-3-7-3-8/index.html +692 -0
- data/site/news/2018/11/04/jekyll-3-8-5-released/index.html +682 -0
- data/site/news/2019/03/18/jekyll-4-0-0-pre-alpha1-released/index.html +710 -0
- data/site/news/2019/07/02/jekyll-3-8-6-released/index.html +180 -115
- data/site/news/2019/07/20/jekyll-4-0-0-pre-beta1-released/index.html +11 -0
- data/site/news/2019/08/04/jekyll-4-0-0-pre-beta1-released/index.html +708 -0
- data/site/news/2019/08/20/jekyll-4-0-0-released/index.html +809 -0
- data/site/news/index.html +976 -326
- data/site/news/releases/index.html +820 -321
- data/site/{philosophy.html → philosophy/index.html} +1 -1
- data/site/redirects.json +1 -1
- data/site/resources/index.html +332 -0
- data/site/showcase/index.html +844 -0
- data/site/sitemap.xml +256 -81
- data/site/team/index.html +63 -77
- data/site/tutorials/cache-api/index.html +418 -0
- data/site/tutorials/convert-site-to-jekyll/index.html +155 -124
- data/site/tutorials/custom-404-page/index.html +76 -43
- data/site/tutorials/home/index.html +64 -37
- data/site/tutorials/navigation/index.html +186 -103
- data/site/tutorials/orderofinterpretation/index.html +80 -53
- data/site/tutorials/using-jekyll-with-bundler/index.html +80 -51
- data/site/tutorials/video-walkthroughs/index.html +62 -35
- metadata +102 -13
- data/site/community/index.html +0 -11
- data/site/docs/continuous-integration/index.html +0 -681
@@ -0,0 +1,1169 @@
|
|
1
|
+
<!DOCTYPE HTML>
|
2
|
+
<html lang="en-US">
|
3
|
+
<head>
|
4
|
+
<meta charset="UTF-8">
|
5
|
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
6
|
+
<meta name="generator" content="Jekyll v4.0.0">
|
7
|
+
<link type="application/atom+xml" rel="alternate" href="https://jekyllrb.com/feed.xml" title="Jekyll • Simple, blog-aware, static sites" />
|
8
|
+
<link type="application/atom+xml" rel="alternate" href="/feed/release.xml" title="Jekyll releases posts" />
|
9
|
+
<link rel="alternate" type="application/atom+xml" title="Recent commits to Jekyll’s master branch" href="https://github.com/jekyll/jekyll/commits/master.atom">
|
10
|
+
<link rel="preload" href="/fonts/lato-v14-latin-300.woff2" as="font" type="font/woff2" crossorigin />
|
11
|
+
<link rel="preload" href="/fonts/lato-v14-latin-700.woff2" as="font" type="font/woff2" crossorigin />
|
12
|
+
<link rel="preload" href="/css/screen.css" as="style">
|
13
|
+
<link rel="stylesheet" href="/css/screen.css">
|
14
|
+
<link rel="icon" type="image/x-icon" href="/favicon.ico">
|
15
|
+
<!-- Begin Jekyll SEO tag v2.6.1 -->
|
16
|
+
<title>Liquid Filters | Jekyll • Simple, blog-aware, static sites</title>
|
17
|
+
<meta name="generator" content="Jekyll v4.0.0" />
|
18
|
+
<meta property="og:title" content="Liquid Filters" />
|
19
|
+
<meta property="og:locale" content="en_US" />
|
20
|
+
<meta name="description" content="All of the standard Liquid filters are supported (see below)." />
|
21
|
+
<meta property="og:description" content="All of the standard Liquid filters are supported (see below)." />
|
22
|
+
<link rel="canonical" href="https://jekyllrb.com/docs/liquid/filters/" />
|
23
|
+
<meta property="og:url" content="https://jekyllrb.com/docs/liquid/filters/" />
|
24
|
+
<meta property="og:site_name" content="Jekyll • Simple, blog-aware, static sites" />
|
25
|
+
<meta property="og:image" content="https://jekyllrb.com/img/jekyll-og.png" />
|
26
|
+
<meta property="og:type" content="article" />
|
27
|
+
<meta property="article:published_time" content="2019-09-11T07:30:27-07:00" />
|
28
|
+
<meta name="twitter:card" content="summary_large_image" />
|
29
|
+
<meta property="twitter:image" content="https://jekyllrb.com/img/jekyll-og.png" />
|
30
|
+
<meta property="twitter:title" content="Liquid Filters" />
|
31
|
+
<meta name="twitter:site" content="@jekyllrb" />
|
32
|
+
<meta name="google-site-verification" content="onQcXpAvtHBrUI5LlroHNE_FP0b2qvFyPq7VZw36iEY" />
|
33
|
+
<script type="application/ld+json">
|
34
|
+
{"description":"All of the standard Liquid filters are supported (see below).","@type":"BlogPosting","mainEntityOfPage":{"@type":"WebPage","@id":"https://jekyllrb.com/docs/liquid/filters/"},"headline":"Liquid Filters","dateModified":"2019-09-11T07:30:27-07:00","url":"https://jekyllrb.com/docs/liquid/filters/","datePublished":"2019-09-11T07:30:27-07:00","image":"https://jekyllrb.com/img/jekyll-og.png","publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://jekyllrb.com/img/logo-2x.png"}},"@context":"https://schema.org"}</script>
|
35
|
+
<!-- End Jekyll SEO tag -->
|
36
|
+
|
37
|
+
<!--[if lt IE 9]>
|
38
|
+
<script src="/js/html5shiv.min.js"></script>
|
39
|
+
<script src="/js/respond.min.js"></script>
|
40
|
+
<![endif]-->
|
41
|
+
</head>
|
42
|
+
|
43
|
+
|
44
|
+
<body class="wrap">
|
45
|
+
<header>
|
46
|
+
<div class="flexbox">
|
47
|
+
<div class="center-on-mobiles">
|
48
|
+
<h1>
|
49
|
+
<a href="/" class="logo">
|
50
|
+
<span class="sr-only">Jekyll</span>
|
51
|
+
<img src="/img/logo-2x.png" width="140" height="65" alt="Jekyll Logo">
|
52
|
+
</a>
|
53
|
+
</h1>
|
54
|
+
</div>
|
55
|
+
<nav class="main-nav hide-on-mobiles">
|
56
|
+
<ul>
|
57
|
+
|
58
|
+
<li>
|
59
|
+
<a href="/">Home</a>
|
60
|
+
</li>
|
61
|
+
|
62
|
+
<li class="current">
|
63
|
+
<a href="/docs/">Docs</a>
|
64
|
+
</li>
|
65
|
+
|
66
|
+
<li>
|
67
|
+
<a href="/resources/">Resources</a>
|
68
|
+
</li>
|
69
|
+
|
70
|
+
<li>
|
71
|
+
<a href="/showcase/">Showcase</a>
|
72
|
+
</li>
|
73
|
+
|
74
|
+
<li>
|
75
|
+
<a href="/news/">News</a>
|
76
|
+
</li>
|
77
|
+
|
78
|
+
</ul>
|
79
|
+
|
80
|
+
</nav>
|
81
|
+
<div class="search hide-on-mobiles">
|
82
|
+
<input type="text" id="docsearch-input" placeholder="Search the docs…">
|
83
|
+
|
84
|
+
</div>
|
85
|
+
<div class="meta hide-on-mobiles">
|
86
|
+
<ul>
|
87
|
+
<li>
|
88
|
+
<a href="https://github.com/jekyll/jekyll/releases/tag/v4.0.0">v4.0.0</a>
|
89
|
+
</li>
|
90
|
+
<li>
|
91
|
+
<a href="https://github.com/jekyll/jekyll">GitHub</a>
|
92
|
+
</li>
|
93
|
+
</ul>
|
94
|
+
</div>
|
95
|
+
</div>
|
96
|
+
<nav class="mobile-nav show-on-mobiles">
|
97
|
+
<ul>
|
98
|
+
|
99
|
+
<li>
|
100
|
+
<a href="/">Home</a>
|
101
|
+
</li>
|
102
|
+
|
103
|
+
<li class="current">
|
104
|
+
<a href="/docs/">Docs</a>
|
105
|
+
</li>
|
106
|
+
|
107
|
+
<li>
|
108
|
+
<a href="/resources/">Resources</a>
|
109
|
+
</li>
|
110
|
+
|
111
|
+
|
112
|
+
<li>
|
113
|
+
<a href="/news/">News</a>
|
114
|
+
</li>
|
115
|
+
|
116
|
+
<li>
|
117
|
+
<a href="https://github.com/jekyll/jekyll">GitHub</a>
|
118
|
+
</li>
|
119
|
+
</ul>
|
120
|
+
|
121
|
+
</nav>
|
122
|
+
</header>
|
123
|
+
|
124
|
+
|
125
|
+
<section class="docs">
|
126
|
+
<div class="grid">
|
127
|
+
|
128
|
+
<div class="docs-nav-mobile unit whole show-on-mobiles">
|
129
|
+
<select onchange="if (this.value) window.location.href=this.value">
|
130
|
+
<option value="">Navigate the docs…</option>
|
131
|
+
|
132
|
+
<optgroup label="Getting Started">
|
133
|
+
|
134
|
+
|
135
|
+
<option value="/docs/">
|
136
|
+
Quickstart
|
137
|
+
</option>
|
138
|
+
|
139
|
+
|
140
|
+
<option value="/docs/ruby-101/">
|
141
|
+
Ruby 101
|
142
|
+
</option>
|
143
|
+
|
144
|
+
|
145
|
+
<option value="/docs/installation/">
|
146
|
+
Installation
|
147
|
+
</option>
|
148
|
+
|
149
|
+
|
150
|
+
<option value="/docs/community/">
|
151
|
+
Community
|
152
|
+
</option>
|
153
|
+
|
154
|
+
|
155
|
+
<option value="/docs/step-by-step/01-setup/">
|
156
|
+
Step by Step Tutorial
|
157
|
+
</option>
|
158
|
+
|
159
|
+
</optgroup>
|
160
|
+
|
161
|
+
<optgroup label="Build">
|
162
|
+
|
163
|
+
|
164
|
+
<option value="/docs/usage/">
|
165
|
+
Command Line Usage
|
166
|
+
</option>
|
167
|
+
|
168
|
+
|
169
|
+
<option value="/docs/configuration/">
|
170
|
+
Configuration
|
171
|
+
</option>
|
172
|
+
|
173
|
+
</optgroup>
|
174
|
+
|
175
|
+
<optgroup label="Content">
|
176
|
+
|
177
|
+
|
178
|
+
<option value="/docs/pages/">
|
179
|
+
Pages
|
180
|
+
</option>
|
181
|
+
|
182
|
+
|
183
|
+
<option value="/docs/posts/">
|
184
|
+
Posts
|
185
|
+
</option>
|
186
|
+
|
187
|
+
|
188
|
+
<option value="/docs/front-matter/">
|
189
|
+
Front Matter
|
190
|
+
</option>
|
191
|
+
|
192
|
+
|
193
|
+
<option value="/docs/collections/">
|
194
|
+
Collections
|
195
|
+
</option>
|
196
|
+
|
197
|
+
|
198
|
+
<option value="/docs/datafiles/">
|
199
|
+
Data Files
|
200
|
+
</option>
|
201
|
+
|
202
|
+
|
203
|
+
<option value="/docs/assets/">
|
204
|
+
Assets
|
205
|
+
</option>
|
206
|
+
|
207
|
+
|
208
|
+
<option value="/docs/static-files/">
|
209
|
+
Static Files
|
210
|
+
</option>
|
211
|
+
|
212
|
+
</optgroup>
|
213
|
+
|
214
|
+
<optgroup label="Site Structure">
|
215
|
+
|
216
|
+
|
217
|
+
<option value="/docs/structure/">
|
218
|
+
Directory Structure
|
219
|
+
</option>
|
220
|
+
|
221
|
+
|
222
|
+
<option value="/docs/liquid/">
|
223
|
+
Liquid
|
224
|
+
</option>
|
225
|
+
|
226
|
+
|
227
|
+
<option value="/docs/variables/">
|
228
|
+
Variables
|
229
|
+
</option>
|
230
|
+
|
231
|
+
|
232
|
+
<option value="/docs/includes/">
|
233
|
+
Includes
|
234
|
+
</option>
|
235
|
+
|
236
|
+
|
237
|
+
<option value="/docs/layouts/">
|
238
|
+
Layouts
|
239
|
+
</option>
|
240
|
+
|
241
|
+
|
242
|
+
<option value="/docs/permalinks/">
|
243
|
+
Permalinks
|
244
|
+
</option>
|
245
|
+
|
246
|
+
|
247
|
+
<option value="/docs/themes/">
|
248
|
+
Themes
|
249
|
+
</option>
|
250
|
+
|
251
|
+
|
252
|
+
<option value="/docs/pagination/">
|
253
|
+
Pagination
|
254
|
+
</option>
|
255
|
+
|
256
|
+
</optgroup>
|
257
|
+
|
258
|
+
<optgroup label="Guides">
|
259
|
+
|
260
|
+
|
261
|
+
<option value="/docs/plugins/">
|
262
|
+
Plugins
|
263
|
+
</option>
|
264
|
+
|
265
|
+
|
266
|
+
<option value="/docs/migrations/">
|
267
|
+
Blog Migrations
|
268
|
+
</option>
|
269
|
+
|
270
|
+
|
271
|
+
<option value="/docs/upgrading/">
|
272
|
+
Upgrading
|
273
|
+
</option>
|
274
|
+
|
275
|
+
|
276
|
+
<option value="/docs/deployment/">
|
277
|
+
Deployment
|
278
|
+
</option>
|
279
|
+
|
280
|
+
</optgroup>
|
281
|
+
|
282
|
+
</select>
|
283
|
+
</div>
|
284
|
+
|
285
|
+
|
286
|
+
<div class="unit four-fifths">
|
287
|
+
<article>
|
288
|
+
<div class="improve right hide-on-mobiles">
|
289
|
+
<a data-proofer-ignore href="https://github.com/jekyll/jekyll/edit/master/docs/_docs/liquid/filters.md"><i class="fa fa-pencil"></i> Improve this page</a>
|
290
|
+
</div>
|
291
|
+
<h1>Liquid Filters</h1>
|
292
|
+
<p>All of the standard Liquid <a href="#standard-liquid-filters">filters</a> are supported (see below).</p>
|
293
|
+
|
294
|
+
<p>To make common tasks easier, Jekyll even adds a few handy filters of its own,
|
295
|
+
all of which you can find on this page. You can also create your own filters
|
296
|
+
using <a href="/docs/plugins/">plugins</a>.</p>
|
297
|
+
|
298
|
+
<div class="mobile-side-scroller">
|
299
|
+
<table>
|
300
|
+
<thead>
|
301
|
+
<tr>
|
302
|
+
<th>Description</th>
|
303
|
+
<th><span class="filter">Filter</span> and <span class="output">Output</span></th>
|
304
|
+
</tr>
|
305
|
+
</thead>
|
306
|
+
<tbody>
|
307
|
+
|
308
|
+
<tr>
|
309
|
+
<td>
|
310
|
+
<p class="name"><strong>Relative URL</strong></p>
|
311
|
+
<p>Prepend the <code>baseurl</code> value to the input. Useful if your site is hosted at a subpath rather than the root of the domain.</p>
|
312
|
+
</td>
|
313
|
+
<td class="align-center">
|
314
|
+
<p><code class="filter">{{ "/assets/style.css" | relative_url }}</code></p>
|
315
|
+
<p><code class="output">/my-baseurl/assets/style.css</code></p>
|
316
|
+
</td>
|
317
|
+
</tr>
|
318
|
+
|
319
|
+
<tr>
|
320
|
+
<td>
|
321
|
+
<p class="name"><strong>Absolute URL</strong></p>
|
322
|
+
<p>Prepend the <code>url</code> and <code>baseurl</code> value to the input.</p>
|
323
|
+
</td>
|
324
|
+
<td class="align-center">
|
325
|
+
<p><code class="filter">{{ "/assets/style.css" | absolute_url }}</code></p>
|
326
|
+
<p><code class="output">http://example.com/my-baseurl/assets/style.css</code></p>
|
327
|
+
</td>
|
328
|
+
</tr>
|
329
|
+
|
330
|
+
<tr>
|
331
|
+
<td>
|
332
|
+
<p class="name"><strong>Date to XML Schema</strong></p>
|
333
|
+
<p>Convert a Date into XML Schema (ISO 8601) format.</p>
|
334
|
+
</td>
|
335
|
+
<td class="align-center">
|
336
|
+
<p><code class="filter">{{ site.time | date_to_xmlschema }}</code></p>
|
337
|
+
<p><code class="output">2008-11-07T13:07:54-08:00</code></p>
|
338
|
+
</td>
|
339
|
+
</tr>
|
340
|
+
|
341
|
+
<tr>
|
342
|
+
<td>
|
343
|
+
<p class="name"><strong>Date to RFC-822 Format</strong></p>
|
344
|
+
<p>Convert a Date into the RFC-822 format used for RSS feeds.</p>
|
345
|
+
</td>
|
346
|
+
<td class="align-center">
|
347
|
+
<p><code class="filter">{{ site.time | date_to_rfc822 }}</code></p>
|
348
|
+
<p><code class="output">Mon, 07 Nov 2008 13:07:54 -0800</code></p>
|
349
|
+
</td>
|
350
|
+
</tr>
|
351
|
+
|
352
|
+
<tr>
|
353
|
+
<td>
|
354
|
+
<p class="name"><strong>Date to String</strong></p>
|
355
|
+
<p>Convert a date to short format.</p>
|
356
|
+
</td>
|
357
|
+
<td class="align-center">
|
358
|
+
<p><code class="filter">{{ site.time | date_to_string }}</code></p>
|
359
|
+
<p><code class="output">07 Nov 2008</code></p>
|
360
|
+
</td>
|
361
|
+
</tr>
|
362
|
+
|
363
|
+
<tr>
|
364
|
+
<td>
|
365
|
+
<p class="name"><strong>Date to String in ordinal US style</strong></p>
|
366
|
+
<p>Format a date to ordinal, US, short format.
|
367
|
+
<span class="version-badge" title="This filter is available from version 3.8.0">3.8.0</span>
|
368
|
+
</p>
|
369
|
+
</td>
|
370
|
+
<td class="align-center">
|
371
|
+
<p><code class="filter">{{ site.time | date_to_string: "ordinal", "US" }}</code></p>
|
372
|
+
<p><code class="output">Nov 7th, 2008</code></p>
|
373
|
+
</td>
|
374
|
+
</tr>
|
375
|
+
|
376
|
+
<tr>
|
377
|
+
<td>
|
378
|
+
<p class="name"><strong>Date to Long String</strong></p>
|
379
|
+
<p>Format a date to long format.</p>
|
380
|
+
</td>
|
381
|
+
<td class="align-center">
|
382
|
+
<p><code class="filter">{{ site.time | date_to_long_string }}</code></p>
|
383
|
+
<p><code class="output">07 November 2008</code></p>
|
384
|
+
</td>
|
385
|
+
</tr>
|
386
|
+
|
387
|
+
<tr>
|
388
|
+
<td>
|
389
|
+
<p class="name"><strong>Date to Long String in ordinal UK style</strong></p>
|
390
|
+
<p>Format a date to ordinal, UK, long format.
|
391
|
+
<span class="version-badge" title="This filter is available from version 3.8.0">3.8.0</span>
|
392
|
+
</p>
|
393
|
+
</td>
|
394
|
+
<td class="align-center">
|
395
|
+
<p><code class="filter">{{ site.time | date_to_long_string: "ordinal" }}</code></p>
|
396
|
+
<p><code class="output">7th November 2008</code></p>
|
397
|
+
</td>
|
398
|
+
</tr>
|
399
|
+
|
400
|
+
<tr>
|
401
|
+
<td>
|
402
|
+
<p class="name"><strong>Where</strong></p>
|
403
|
+
<p>Select all the objects in an array where the key has the given value.</p>
|
404
|
+
</td>
|
405
|
+
<td class="align-center">
|
406
|
+
<p><code class="filter">{{ site.members | where:"graduation_year","2014" }}</code></p>
|
407
|
+
|
408
|
+
</td>
|
409
|
+
</tr>
|
410
|
+
|
411
|
+
<tr>
|
412
|
+
<td>
|
413
|
+
<p class="name"><strong>Where Expression</strong></p>
|
414
|
+
<p>Select all the objects in an array where the expression is true.
|
415
|
+
<span class="version-badge" title="This filter is available from version 3.2.0">3.2.0</span>
|
416
|
+
</p>
|
417
|
+
</td>
|
418
|
+
<td class="align-center">
|
419
|
+
<p><code class="filter">{{ site.members | where_exp:"item",
|
420
|
+
"item.graduation_year == 2014" }}</code></p>
|
421
|
+
|
422
|
+
|
423
|
+
<p><code class="filter">{{ site.members | where_exp:"item",
|
424
|
+
"item.graduation_year < 2014" }}</code></p>
|
425
|
+
|
426
|
+
|
427
|
+
<p><code class="filter">{{ site.members | where_exp:"item",
|
428
|
+
"item.projects contains 'foo'" }}</code></p>
|
429
|
+
|
430
|
+
</td>
|
431
|
+
</tr>
|
432
|
+
|
433
|
+
<tr>
|
434
|
+
<td>
|
435
|
+
<p class="name"><strong>Group By</strong></p>
|
436
|
+
<p>Group an array's items by a given property.</p>
|
437
|
+
</td>
|
438
|
+
<td class="align-center">
|
439
|
+
<p><code class="filter">{{ site.members | group_by:"graduation_year" }}</code></p>
|
440
|
+
<p><code class="output">[{"name"=>"2013", "items"=>[...]},
|
441
|
+
{"name"=>"2014", "items"=>[...]}]</code></p>
|
442
|
+
</td>
|
443
|
+
</tr>
|
444
|
+
|
445
|
+
<tr>
|
446
|
+
<td>
|
447
|
+
<p class="name"><strong>Group By Expression</strong></p>
|
448
|
+
<p>Group an array's items using a Liquid expression.
|
449
|
+
<span class="version-badge" title="This filter is available from version 3.4.0">3.4.0</span>
|
450
|
+
</p>
|
451
|
+
</td>
|
452
|
+
<td class="align-center">
|
453
|
+
<p><code class="filter">{{ site.members | group_by_exp: "item",
|
454
|
+
"item.graduation_year | truncate: 3, ''" }}</code></p>
|
455
|
+
<p><code class="output">[{"name"=>"201", "items"=>[...]},
|
456
|
+
{"name"=>"200", "items"=>[...]}]</code></p>
|
457
|
+
</td>
|
458
|
+
</tr>
|
459
|
+
|
460
|
+
<tr>
|
461
|
+
<td>
|
462
|
+
<p class="name"><strong>XML Escape</strong></p>
|
463
|
+
<p>Escape some text for use in XML.</p>
|
464
|
+
</td>
|
465
|
+
<td class="align-center">
|
466
|
+
<p><code class="filter">{{ page.content | xml_escape }}</code></p>
|
467
|
+
|
468
|
+
</td>
|
469
|
+
</tr>
|
470
|
+
|
471
|
+
<tr>
|
472
|
+
<td>
|
473
|
+
<p class="name"><strong>CGI Escape</strong></p>
|
474
|
+
<p>CGI escape a string for use in a URL. Replaces any special characters with appropriate <code>%XX</code> replacements. CGI escape normally replaces a space with a plus <code>+</code> sign.</p>
|
475
|
+
</td>
|
476
|
+
<td class="align-center">
|
477
|
+
<p><code class="filter">{{ "foo, bar; baz?" | cgi_escape }}</code></p>
|
478
|
+
<p><code class="output">foo%2C+bar%3B+baz%3F</code></p>
|
479
|
+
</td>
|
480
|
+
</tr>
|
481
|
+
|
482
|
+
<tr>
|
483
|
+
<td>
|
484
|
+
<p class="name"><strong>URI Escape</strong></p>
|
485
|
+
<p>Percent encodes any special characters in a URI. URI escape normally replaces a space with <code>%20</code>. <a href="https://en.wikipedia.org/wiki/Percent-encoding#Types_of_URI_characters">Reserved characters</a> will not be escaped.</p>
|
486
|
+
</td>
|
487
|
+
<td class="align-center">
|
488
|
+
<p><code class="filter">{{ "http://foo.com/?q=foo, \bar?" | uri_escape }}</code></p>
|
489
|
+
<p><code class="output">http://foo.com/?q=foo,%20%5Cbar?</code></p>
|
490
|
+
</td>
|
491
|
+
</tr>
|
492
|
+
|
493
|
+
<tr>
|
494
|
+
<td>
|
495
|
+
<p class="name"><strong>Number of Words</strong></p>
|
496
|
+
<p>Count the number of words in some text.</p>
|
497
|
+
</td>
|
498
|
+
<td class="align-center">
|
499
|
+
<p><code class="filter">{{ page.content | number_of_words }}</code></p>
|
500
|
+
<p><code class="output">1337</code></p>
|
501
|
+
</td>
|
502
|
+
</tr>
|
503
|
+
|
504
|
+
<tr>
|
505
|
+
<td>
|
506
|
+
<p class="name"><strong>Array to Sentence</strong></p>
|
507
|
+
<p>Convert an array into a sentence. Useful for listing tags. Optional argument for connector.</p>
|
508
|
+
</td>
|
509
|
+
<td class="align-center">
|
510
|
+
<p><code class="filter">{{ page.tags | array_to_sentence_string }}</code></p>
|
511
|
+
<p><code class="output">foo, bar, and baz</code></p>
|
512
|
+
|
513
|
+
<p><code class="filter">{{ page.tags | array_to_sentence_string: "or" }}</code></p>
|
514
|
+
<p><code class="output">foo, bar, or baz</code></p>
|
515
|
+
</td>
|
516
|
+
</tr>
|
517
|
+
|
518
|
+
<tr>
|
519
|
+
<td>
|
520
|
+
<p class="name"><strong>Markdownify</strong></p>
|
521
|
+
<p>Convert a Markdown-formatted string into HTML.</p>
|
522
|
+
</td>
|
523
|
+
<td class="align-center">
|
524
|
+
<p><code class="filter">{{ page.excerpt | markdownify }}</code></p>
|
525
|
+
|
526
|
+
</td>
|
527
|
+
</tr>
|
528
|
+
|
529
|
+
<tr>
|
530
|
+
<td>
|
531
|
+
<p class="name"><strong>Smartify</strong></p>
|
532
|
+
<p>Convert "quotes" into “smart quotes.”</p>
|
533
|
+
</td>
|
534
|
+
<td class="align-center">
|
535
|
+
<p><code class="filter">{{ page.title | smartify }}</code></p>
|
536
|
+
|
537
|
+
</td>
|
538
|
+
</tr>
|
539
|
+
|
540
|
+
<tr>
|
541
|
+
<td>
|
542
|
+
<p class="name"><strong>Converting Sass/SCSS</strong></p>
|
543
|
+
<p>Convert a Sass- or SCSS-formatted string into CSS.</p>
|
544
|
+
</td>
|
545
|
+
<td class="align-center">
|
546
|
+
<p><code class="filter">{{ some_sass | sassify }}</code></p>
|
547
|
+
|
548
|
+
|
549
|
+
<p><code class="filter">{{ some_scss | scssify }}</code></p>
|
550
|
+
|
551
|
+
</td>
|
552
|
+
</tr>
|
553
|
+
|
554
|
+
<tr>
|
555
|
+
<td>
|
556
|
+
<p class="name"><strong>Slugify</strong></p>
|
557
|
+
<p>Convert a string into a lowercase URL "slug". See below for options.</p>
|
558
|
+
</td>
|
559
|
+
<td class="align-center">
|
560
|
+
<p><code class="filter">{{ "The _config.yml file" | slugify }}</code></p>
|
561
|
+
<p><code class="output">the-config-yml-file</code></p>
|
562
|
+
|
563
|
+
<p><code class="filter">{{ "The _config.yml file" | slugify: "pretty" }}</code></p>
|
564
|
+
<p><code class="output">the-_config.yml-file</code></p>
|
565
|
+
|
566
|
+
<p><code class="filter">{{ "The _cönfig.yml file" | slugify: "ascii" }}</code></p>
|
567
|
+
<p><code class="output">the-c-nfig-yml-file</code></p>
|
568
|
+
|
569
|
+
<p><code class="filter">{{ "The cönfig.yml file" | slugify: "latin" }}</code></p>
|
570
|
+
<p><code class="output">the-config-yml-file</code></p>
|
571
|
+
</td>
|
572
|
+
</tr>
|
573
|
+
|
574
|
+
<tr>
|
575
|
+
<td>
|
576
|
+
<p class="name"><strong>Data To JSON</strong></p>
|
577
|
+
<p>Convert Hash or Array to JSON.</p>
|
578
|
+
</td>
|
579
|
+
<td class="align-center">
|
580
|
+
<p><code class="filter">{{ site.data.projects | jsonify }}</code></p>
|
581
|
+
|
582
|
+
</td>
|
583
|
+
</tr>
|
584
|
+
|
585
|
+
<tr>
|
586
|
+
<td>
|
587
|
+
<p class="name"><strong>Normalize Whitespace</strong></p>
|
588
|
+
<p>Replace any occurrence of whitespace with a single space.</p>
|
589
|
+
</td>
|
590
|
+
<td class="align-center">
|
591
|
+
<p><code class="filter">{{ "a \n b" | normalize_whitespace }}</code></p>
|
592
|
+
|
593
|
+
</td>
|
594
|
+
</tr>
|
595
|
+
|
596
|
+
<tr>
|
597
|
+
<td>
|
598
|
+
<p class="name"><strong>Sort</strong></p>
|
599
|
+
<p>Sort an array. Optional arguments for hashes 1. property name 2. nils order (<em>first</em> or <em>last</em>).</p>
|
600
|
+
</td>
|
601
|
+
<td class="align-center">
|
602
|
+
<p><code class="filter">{{ page.tags | sort }}</code></p>
|
603
|
+
|
604
|
+
|
605
|
+
<p><code class="filter">{{ site.posts | sort: "author" }}</code></p>
|
606
|
+
|
607
|
+
|
608
|
+
<p><code class="filter">{{ site.pages | sort: "title", "last" }}</code></p>
|
609
|
+
|
610
|
+
</td>
|
611
|
+
</tr>
|
612
|
+
|
613
|
+
<tr>
|
614
|
+
<td>
|
615
|
+
<p class="name"><strong>Sample</strong></p>
|
616
|
+
<p>Pick a random value from an array. Optionally, pick multiple values.</p>
|
617
|
+
</td>
|
618
|
+
<td class="align-center">
|
619
|
+
<p><code class="filter">{{ site.pages | sample }}</code></p>
|
620
|
+
|
621
|
+
|
622
|
+
<p><code class="filter">{{ site.pages | sample: 2 }}</code></p>
|
623
|
+
|
624
|
+
</td>
|
625
|
+
</tr>
|
626
|
+
|
627
|
+
<tr>
|
628
|
+
<td>
|
629
|
+
<p class="name"><strong>To Integer</strong></p>
|
630
|
+
<p>Convert a string or boolean to integer.</p>
|
631
|
+
</td>
|
632
|
+
<td class="align-center">
|
633
|
+
<p><code class="filter">{{ some_var | to_integer }}</code></p>
|
634
|
+
|
635
|
+
</td>
|
636
|
+
</tr>
|
637
|
+
|
638
|
+
<tr>
|
639
|
+
<td>
|
640
|
+
<p class="name"><strong>Array Filters</strong></p>
|
641
|
+
<p>Push, pop, shift, and unshift elements from an Array. These are <strong>NON-DESTRUCTIVE</strong>, i.e. they do not mutate the array, but rather make a copy and mutate that.</p>
|
642
|
+
</td>
|
643
|
+
<td class="align-center">
|
644
|
+
<p><code class="filter">{{ page.tags | push: "Spokane" }}</code></p>
|
645
|
+
<p><code class="output">["Seattle", "Tacoma", "Spokane"]</code></p>
|
646
|
+
|
647
|
+
<p><code class="filter">{{ page.tags | pop }}</code></p>
|
648
|
+
<p><code class="output">["Seattle"]</code></p>
|
649
|
+
|
650
|
+
<p><code class="filter">{{ page.tags | shift }}</code></p>
|
651
|
+
<p><code class="output">["Tacoma"]</code></p>
|
652
|
+
|
653
|
+
<p><code class="filter">{{ page.tags | unshift: "Olympia" }}</code></p>
|
654
|
+
<p><code class="output">["Olympia", "Seattle", "Tacoma"]</code></p>
|
655
|
+
</td>
|
656
|
+
</tr>
|
657
|
+
|
658
|
+
<tr>
|
659
|
+
<td>
|
660
|
+
<p class="name"><strong>Inspect</strong></p>
|
661
|
+
<p>Convert an object into its String representation for debugging.</p>
|
662
|
+
</td>
|
663
|
+
<td class="align-center">
|
664
|
+
<p><code class="filter">{{ some_var | inspect }}</code></p>
|
665
|
+
|
666
|
+
</td>
|
667
|
+
</tr>
|
668
|
+
|
669
|
+
</tbody>
|
670
|
+
</table>
|
671
|
+
</div>
|
672
|
+
|
673
|
+
<h3 id="options-for-the-slugify-filter">Options for the <code class="highlighter-rouge">slugify</code> filter</h3>
|
674
|
+
|
675
|
+
<p>The <code class="highlighter-rouge">slugify</code> filter accepts an option, each specifying what to filter.
|
676
|
+
The default is <code class="highlighter-rouge">default</code>. They are as follows (with what they filter):</p>
|
677
|
+
|
678
|
+
<ul>
|
679
|
+
<li><code class="highlighter-rouge">none</code>: no characters</li>
|
680
|
+
<li><code class="highlighter-rouge">raw</code>: spaces</li>
|
681
|
+
<li><code class="highlighter-rouge">default</code>: spaces and non-alphanumeric characters</li>
|
682
|
+
<li><code class="highlighter-rouge">pretty</code>: spaces and non-alphanumeric characters except for <code class="highlighter-rouge">._~!$&'()+,;=@</code></li>
|
683
|
+
<li><code class="highlighter-rouge">ascii</code>: spaces, non-alphanumeric, and non-ASCII characters</li>
|
684
|
+
<li><code class="highlighter-rouge">latin</code>: like <code class="highlighter-rouge">default</code>, except Latin characters are first transliterated (e.g. <code class="highlighter-rouge">àèïòü</code> to <code class="highlighter-rouge">aeiou</code>)<span class="version-badge" title="This feature is available starting version 3.7.0">3.7.0</span>
|
685
|
+
.</li>
|
686
|
+
</ul>
|
687
|
+
|
688
|
+
<h3 id="detecting-nil-values-with-where-filter40">Detecting <code class="highlighter-rouge">nil</code> values with <code class="highlighter-rouge">where</code> filter<span class="version-badge" title="This feature is available starting version 4.0">4.0</span></h3>
|
689
|
+
<p>You can use the <code class="highlighter-rouge">where</code> filter to detect documents and pages with properties that are <code class="highlighter-rouge">nil</code> or <code class="highlighter-rouge">""</code>. For example,</p>
|
690
|
+
|
691
|
+
<div class="language-liquid highlighter-rouge"><div class="highlight"><pre class="highlight"><code>// Using `nil` to select posts that either do not have `my_prop` defined or `my_prop` has been set to `nil` explicitly.
|
692
|
+
<span class="p">{%</span><span class="w"> </span><span class="nt">assign</span><span class="w"> </span><span class="nv">filtered_posts</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">posts</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">where</span><span class="p">:</span><span class="w"> </span><span class="s1">'my_prop'</span><span class="p">,</span><span class="w"> </span>nil<span class="w"> </span><span class="p">%}</span>
|
693
|
+
</code></pre></div></div>
|
694
|
+
|
695
|
+
<div class="language-liquid highlighter-rouge"><div class="highlight"><pre class="highlight"><code>// Using Liquid's special literal `empty` or `blank` to select posts that have `my_prop` set to an empty value.
|
696
|
+
<span class="p">{%</span><span class="w"> </span><span class="nt">assign</span><span class="w"> </span><span class="nv">filtered_posts</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">posts</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">where</span><span class="p">:</span><span class="w"> </span><span class="s1">'my_prop'</span><span class="p">,</span><span class="w"> </span>empty<span class="w"> </span><span class="p">%}</span>
|
697
|
+
</code></pre></div></div>
|
698
|
+
|
699
|
+
<h3 id="binary-operators-in-where_exp-filter40">Binary operators in <code class="highlighter-rouge">where_exp</code> filter<span class="version-badge" title="This feature is available starting version 4.0">4.0</span></h3>
|
700
|
+
<p>You can use Liquid binary operators <code class="highlighter-rouge">or</code> and <code class="highlighter-rouge">and</code> in the expression passed to the <code class="highlighter-rouge">where_exp</code> filter to employ multiple
|
701
|
+
conditionals in the operation.</p>
|
702
|
+
|
703
|
+
<p>For example, to get a list of documents on English horror flicks, one could use the following snippet:</p>
|
704
|
+
|
705
|
+
<div class="language-liquid highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="p">{{</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">movies</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">where_exp</span><span class="p">:</span><span class="w"> </span><span class="s2">"item"</span><span class="p">,</span><span class="w"> </span><span class="s2">"item.genre == 'horror' and item.language == 'English'"</span><span class="w"> </span><span class="p">}}</span>
|
706
|
+
</code></pre></div></div>
|
707
|
+
|
708
|
+
<p>Or to get a list of comic-book based movies, one may use the following:</p>
|
709
|
+
|
710
|
+
<div class="language-liquid highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="p">{{</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">movies</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">where_exp</span><span class="p">:</span><span class="w"> </span><span class="s2">"item"</span><span class="p">,</span><span class="w"> </span><span class="s2">"item.sub_genre == 'MCU' or item.sub_genre == 'DCEU'"</span><span class="w"> </span><span class="p">}}</span>
|
711
|
+
</code></pre></div></div>
|
712
|
+
|
713
|
+
<h3 id="standard-liquid-filters">Standard Liquid Filters</h3>
|
714
|
+
|
715
|
+
<p>For your convenience, here is the list of all <a href="https://shopify.github.io/liquid/filters/">Liquid filters</a> with links to examples in the official Liquid documentation.</p>
|
716
|
+
|
717
|
+
<ul>
|
718
|
+
<li>
|
719
|
+
<p><a href="https://shopify.github.io/liquid/filters/abs/">abs</a></p>
|
720
|
+
</li>
|
721
|
+
<li>
|
722
|
+
<p><a href="https://shopify.github.io/liquid/filters/append/">append</a></p>
|
723
|
+
</li>
|
724
|
+
<li>
|
725
|
+
<p><a href="https://shopify.github.io/liquid/filters/at_least/">at_least</a></p>
|
726
|
+
</li>
|
727
|
+
<li>
|
728
|
+
<p><a href="https://shopify.github.io/liquid/filters/at_most/">at_most</a></p>
|
729
|
+
</li>
|
730
|
+
<li>
|
731
|
+
<p><a href="https://shopify.github.io/liquid/filters/capitalize/">capitalize</a></p>
|
732
|
+
</li>
|
733
|
+
<li>
|
734
|
+
<p><a href="https://shopify.github.io/liquid/filters/ceil/">ceil</a></p>
|
735
|
+
</li>
|
736
|
+
<li>
|
737
|
+
<p><a href="https://shopify.github.io/liquid/filters/compact/">compact</a></p>
|
738
|
+
</li>
|
739
|
+
<li>
|
740
|
+
<p><a href="https://shopify.github.io/liquid/filters/concat/">concat</a></p>
|
741
|
+
</li>
|
742
|
+
<li>
|
743
|
+
<p><a href="https://shopify.github.io/liquid/filters/date/">date</a></p>
|
744
|
+
</li>
|
745
|
+
<li>
|
746
|
+
<p><a href="https://shopify.github.io/liquid/filters/default/">default</a></p>
|
747
|
+
</li>
|
748
|
+
<li>
|
749
|
+
<p><a href="https://shopify.github.io/liquid/filters/divided_by/">divided_by</a></p>
|
750
|
+
</li>
|
751
|
+
<li>
|
752
|
+
<p><a href="https://shopify.github.io/liquid/filters/downcase/">downcase</a></p>
|
753
|
+
</li>
|
754
|
+
<li>
|
755
|
+
<p><a href="https://shopify.github.io/liquid/filters/escape/">escape</a></p>
|
756
|
+
</li>
|
757
|
+
<li>
|
758
|
+
<p><a href="https://shopify.github.io/liquid/filters/escape_once/">escape_once</a></p>
|
759
|
+
</li>
|
760
|
+
<li>
|
761
|
+
<p><a href="https://shopify.github.io/liquid/filters/first/">first</a></p>
|
762
|
+
</li>
|
763
|
+
<li>
|
764
|
+
<p><a href="https://shopify.github.io/liquid/filters/floor/">floor</a></p>
|
765
|
+
</li>
|
766
|
+
<li>
|
767
|
+
<p><a href="https://shopify.github.io/liquid/filters/join/">join</a></p>
|
768
|
+
</li>
|
769
|
+
<li>
|
770
|
+
<p><a href="https://shopify.github.io/liquid/filters/last/">last</a></p>
|
771
|
+
</li>
|
772
|
+
<li>
|
773
|
+
<p><a href="https://shopify.github.io/liquid/filters/lstrip/">lstrip</a></p>
|
774
|
+
</li>
|
775
|
+
<li>
|
776
|
+
<p><a href="https://shopify.github.io/liquid/filters/map/">map</a></p>
|
777
|
+
</li>
|
778
|
+
<li>
|
779
|
+
<p><a href="https://shopify.github.io/liquid/filters/minus/">minus</a></p>
|
780
|
+
</li>
|
781
|
+
<li>
|
782
|
+
<p><a href="https://shopify.github.io/liquid/filters/modulo/">modulo</a></p>
|
783
|
+
</li>
|
784
|
+
<li>
|
785
|
+
<p><a href="https://shopify.github.io/liquid/filters/newline_to_br/">newline_to_br</a></p>
|
786
|
+
</li>
|
787
|
+
<li>
|
788
|
+
<p><a href="https://shopify.github.io/liquid/filters/plus/">plus</a></p>
|
789
|
+
</li>
|
790
|
+
<li>
|
791
|
+
<p><a href="https://shopify.github.io/liquid/filters/prepend/">prepend</a></p>
|
792
|
+
</li>
|
793
|
+
<li>
|
794
|
+
<p><a href="https://shopify.github.io/liquid/filters/remove/">remove</a></p>
|
795
|
+
</li>
|
796
|
+
<li>
|
797
|
+
<p><a href="https://shopify.github.io/liquid/filters/remove_first/">remove_first</a></p>
|
798
|
+
</li>
|
799
|
+
<li>
|
800
|
+
<p><a href="https://shopify.github.io/liquid/filters/replace/">replace</a></p>
|
801
|
+
</li>
|
802
|
+
<li>
|
803
|
+
<p><a href="https://shopify.github.io/liquid/filters/replace_first/">replace_first</a></p>
|
804
|
+
</li>
|
805
|
+
<li>
|
806
|
+
<p><a href="https://shopify.github.io/liquid/filters/reverse/">reverse</a></p>
|
807
|
+
</li>
|
808
|
+
<li>
|
809
|
+
<p><a href="https://shopify.github.io/liquid/filters/round/">round</a></p>
|
810
|
+
</li>
|
811
|
+
<li>
|
812
|
+
<p><a href="https://shopify.github.io/liquid/filters/rstrip/">rstrip</a></p>
|
813
|
+
</li>
|
814
|
+
<li>
|
815
|
+
<p><a href="https://shopify.github.io/liquid/filters/size/">size</a></p>
|
816
|
+
</li>
|
817
|
+
<li>
|
818
|
+
<p><a href="https://shopify.github.io/liquid/filters/slice/">slice</a></p>
|
819
|
+
</li>
|
820
|
+
<li>
|
821
|
+
<p><a href="https://shopify.github.io/liquid/filters/sort/">sort</a></p>
|
822
|
+
</li>
|
823
|
+
<li>
|
824
|
+
<p><a href="https://shopify.github.io/liquid/filters/sort_natural/">sort_natural</a></p>
|
825
|
+
</li>
|
826
|
+
<li>
|
827
|
+
<p><a href="https://shopify.github.io/liquid/filters/split/">split</a></p>
|
828
|
+
</li>
|
829
|
+
<li>
|
830
|
+
<p><a href="https://shopify.github.io/liquid/filters/strip/">strip</a></p>
|
831
|
+
</li>
|
832
|
+
<li>
|
833
|
+
<p><a href="https://shopify.github.io/liquid/filters/strip_html/">strip_html</a></p>
|
834
|
+
</li>
|
835
|
+
<li>
|
836
|
+
<p><a href="https://shopify.github.io/liquid/filters/strip_newlines/">strip_newlines</a></p>
|
837
|
+
</li>
|
838
|
+
<li>
|
839
|
+
<p><a href="https://shopify.github.io/liquid/filters/times/">times</a></p>
|
840
|
+
</li>
|
841
|
+
<li>
|
842
|
+
<p><a href="https://shopify.github.io/liquid/filters/truncate/">truncate</a></p>
|
843
|
+
</li>
|
844
|
+
<li>
|
845
|
+
<p><a href="https://shopify.github.io/liquid/filters/truncatewords/">truncatewords</a></p>
|
846
|
+
</li>
|
847
|
+
<li>
|
848
|
+
<p><a href="https://shopify.github.io/liquid/filters/uniq/">uniq</a></p>
|
849
|
+
</li>
|
850
|
+
<li>
|
851
|
+
<p><a href="https://shopify.github.io/liquid/filters/upcase/">upcase</a></p>
|
852
|
+
</li>
|
853
|
+
<li>
|
854
|
+
<p><a href="https://shopify.github.io/liquid/filters/url_decode/">url_decode</a></p>
|
855
|
+
</li>
|
856
|
+
<li>
|
857
|
+
<p><a href="https://shopify.github.io/liquid/filters/url_encode/">url_encode</a></p>
|
858
|
+
</li>
|
859
|
+
</ul>
|
860
|
+
|
861
|
+
|
862
|
+
</article>
|
863
|
+
</div>
|
864
|
+
|
865
|
+
<div class="unit one-fifth hide-on-mobiles">
|
866
|
+
<aside>
|
867
|
+
|
868
|
+
<h4>Getting Started</h4>
|
869
|
+
<ul>
|
870
|
+
|
871
|
+
|
872
|
+
<li>
|
873
|
+
<a href="/docs/">
|
874
|
+
Quickstart
|
875
|
+
</a>
|
876
|
+
</li>
|
877
|
+
|
878
|
+
|
879
|
+
<li>
|
880
|
+
<a href="/docs/ruby-101/">
|
881
|
+
Ruby 101
|
882
|
+
</a>
|
883
|
+
</li>
|
884
|
+
|
885
|
+
|
886
|
+
<li>
|
887
|
+
<a href="/docs/installation/">
|
888
|
+
Installation
|
889
|
+
</a>
|
890
|
+
</li>
|
891
|
+
|
892
|
+
|
893
|
+
<li>
|
894
|
+
<a href="/docs/community/">
|
895
|
+
Community
|
896
|
+
</a>
|
897
|
+
</li>
|
898
|
+
|
899
|
+
|
900
|
+
<li>
|
901
|
+
<a href="/docs/step-by-step/01-setup/">
|
902
|
+
Step by Step Tutorial
|
903
|
+
</a>
|
904
|
+
</li>
|
905
|
+
|
906
|
+
</ul>
|
907
|
+
|
908
|
+
<h4>Build</h4>
|
909
|
+
<ul>
|
910
|
+
|
911
|
+
|
912
|
+
<li>
|
913
|
+
<a href="/docs/usage/">
|
914
|
+
Command Line Usage
|
915
|
+
</a>
|
916
|
+
</li>
|
917
|
+
|
918
|
+
|
919
|
+
<li>
|
920
|
+
<a href="/docs/configuration/">
|
921
|
+
Configuration
|
922
|
+
</a>
|
923
|
+
</li>
|
924
|
+
|
925
|
+
</ul>
|
926
|
+
|
927
|
+
<h4>Content</h4>
|
928
|
+
<ul>
|
929
|
+
|
930
|
+
|
931
|
+
<li>
|
932
|
+
<a href="/docs/pages/">
|
933
|
+
Pages
|
934
|
+
</a>
|
935
|
+
</li>
|
936
|
+
|
937
|
+
|
938
|
+
<li>
|
939
|
+
<a href="/docs/posts/">
|
940
|
+
Posts
|
941
|
+
</a>
|
942
|
+
</li>
|
943
|
+
|
944
|
+
|
945
|
+
<li>
|
946
|
+
<a href="/docs/front-matter/">
|
947
|
+
Front Matter
|
948
|
+
</a>
|
949
|
+
</li>
|
950
|
+
|
951
|
+
|
952
|
+
<li>
|
953
|
+
<a href="/docs/collections/">
|
954
|
+
Collections
|
955
|
+
</a>
|
956
|
+
</li>
|
957
|
+
|
958
|
+
|
959
|
+
<li>
|
960
|
+
<a href="/docs/datafiles/">
|
961
|
+
Data Files
|
962
|
+
</a>
|
963
|
+
</li>
|
964
|
+
|
965
|
+
|
966
|
+
<li>
|
967
|
+
<a href="/docs/assets/">
|
968
|
+
Assets
|
969
|
+
</a>
|
970
|
+
</li>
|
971
|
+
|
972
|
+
|
973
|
+
<li>
|
974
|
+
<a href="/docs/static-files/">
|
975
|
+
Static Files
|
976
|
+
</a>
|
977
|
+
</li>
|
978
|
+
|
979
|
+
</ul>
|
980
|
+
|
981
|
+
<h4>Site Structure</h4>
|
982
|
+
<ul>
|
983
|
+
|
984
|
+
|
985
|
+
<li>
|
986
|
+
<a href="/docs/structure/">
|
987
|
+
Directory Structure
|
988
|
+
</a>
|
989
|
+
</li>
|
990
|
+
|
991
|
+
|
992
|
+
<li>
|
993
|
+
<a href="/docs/liquid/">
|
994
|
+
Liquid
|
995
|
+
</a>
|
996
|
+
</li>
|
997
|
+
|
998
|
+
|
999
|
+
<li>
|
1000
|
+
<a href="/docs/variables/">
|
1001
|
+
Variables
|
1002
|
+
</a>
|
1003
|
+
</li>
|
1004
|
+
|
1005
|
+
|
1006
|
+
<li>
|
1007
|
+
<a href="/docs/includes/">
|
1008
|
+
Includes
|
1009
|
+
</a>
|
1010
|
+
</li>
|
1011
|
+
|
1012
|
+
|
1013
|
+
<li>
|
1014
|
+
<a href="/docs/layouts/">
|
1015
|
+
Layouts
|
1016
|
+
</a>
|
1017
|
+
</li>
|
1018
|
+
|
1019
|
+
|
1020
|
+
<li>
|
1021
|
+
<a href="/docs/permalinks/">
|
1022
|
+
Permalinks
|
1023
|
+
</a>
|
1024
|
+
</li>
|
1025
|
+
|
1026
|
+
|
1027
|
+
<li>
|
1028
|
+
<a href="/docs/themes/">
|
1029
|
+
Themes
|
1030
|
+
</a>
|
1031
|
+
</li>
|
1032
|
+
|
1033
|
+
|
1034
|
+
<li>
|
1035
|
+
<a href="/docs/pagination/">
|
1036
|
+
Pagination
|
1037
|
+
</a>
|
1038
|
+
</li>
|
1039
|
+
|
1040
|
+
</ul>
|
1041
|
+
|
1042
|
+
<h4>Guides</h4>
|
1043
|
+
<ul>
|
1044
|
+
|
1045
|
+
|
1046
|
+
<li>
|
1047
|
+
<a href="/docs/plugins/">
|
1048
|
+
Plugins
|
1049
|
+
</a>
|
1050
|
+
</li>
|
1051
|
+
|
1052
|
+
|
1053
|
+
<li>
|
1054
|
+
<a href="/docs/migrations/">
|
1055
|
+
Blog Migrations
|
1056
|
+
</a>
|
1057
|
+
</li>
|
1058
|
+
|
1059
|
+
|
1060
|
+
<li>
|
1061
|
+
<a href="/docs/upgrading/">
|
1062
|
+
Upgrading
|
1063
|
+
</a>
|
1064
|
+
</li>
|
1065
|
+
|
1066
|
+
|
1067
|
+
<li>
|
1068
|
+
<a href="/docs/deployment/">
|
1069
|
+
Deployment
|
1070
|
+
</a>
|
1071
|
+
</li>
|
1072
|
+
|
1073
|
+
</ul>
|
1074
|
+
|
1075
|
+
</aside>
|
1076
|
+
</div>
|
1077
|
+
|
1078
|
+
|
1079
|
+
<div class="clear"></div>
|
1080
|
+
|
1081
|
+
</div>
|
1082
|
+
</section>
|
1083
|
+
|
1084
|
+
|
1085
|
+
<footer>
|
1086
|
+
<div class="grid">
|
1087
|
+
<div class="unit one-third center-on-mobiles">
|
1088
|
+
<p>Jekyll is lovingly maintained by the <a href="/team/">core team</a> of volunteers. </p>
|
1089
|
+
<p>The contents of this website are <br />© 2019 under the terms of the <a href="https://github.com/jekyll/jekyll/blob/master/LICENSE">MIT License</a>.</p>
|
1090
|
+
</div>
|
1091
|
+
<div class="unit two-thirds align-right center-on-mobiles">
|
1092
|
+
<p>
|
1093
|
+
Proudly hosted by
|
1094
|
+
<a href="https://github.com">
|
1095
|
+
<img src="/img/footer-logo.png" width="100" height="30" alt="GitHub • Social coding">
|
1096
|
+
</a>
|
1097
|
+
</p>
|
1098
|
+
</div>
|
1099
|
+
<div class="unit two-thirds align-right center-on-mobiles">
|
1100
|
+
<p>
|
1101
|
+
Jekyll is funded thanks to its
|
1102
|
+
<a href="https://github.com/jekyll/jekyll#sponsors">
|
1103
|
+
sponsors!
|
1104
|
+
</a>
|
1105
|
+
</p>
|
1106
|
+
</div>
|
1107
|
+
</div>
|
1108
|
+
</footer>
|
1109
|
+
|
1110
|
+
<script>
|
1111
|
+
var anchorForId = function (id) {
|
1112
|
+
var anchor = document.createElement("a");
|
1113
|
+
anchor.className = "header-link";
|
1114
|
+
anchor.href = "#" + id;
|
1115
|
+
anchor.innerHTML = "<span class=\"sr-only\">Permalink</span><i class=\"fa fa-link\"></i>";
|
1116
|
+
anchor.title = "Permalink";
|
1117
|
+
return anchor;
|
1118
|
+
};
|
1119
|
+
|
1120
|
+
var linkifyAnchors = function (level, containingElement) {
|
1121
|
+
var headers = containingElement.getElementsByTagName("h" + level);
|
1122
|
+
for (var h = 0; h < headers.length; h++) {
|
1123
|
+
var header = headers[h];
|
1124
|
+
|
1125
|
+
if (typeof header.id !== "undefined" && header.id !== "") {
|
1126
|
+
header.appendChild(anchorForId(header.id));
|
1127
|
+
}
|
1128
|
+
}
|
1129
|
+
};
|
1130
|
+
|
1131
|
+
document.onreadystatechange = function () {
|
1132
|
+
if (this.readyState === "complete") {
|
1133
|
+
var contentBlock = document.getElementsByClassName("docs")[0] || document.getElementsByClassName("news")[0];
|
1134
|
+
if (!contentBlock) {
|
1135
|
+
return;
|
1136
|
+
}
|
1137
|
+
for (var level = 1; level <= 6; level++) {
|
1138
|
+
linkifyAnchors(level, contentBlock);
|
1139
|
+
}
|
1140
|
+
}
|
1141
|
+
};
|
1142
|
+
</script>
|
1143
|
+
|
1144
|
+
|
1145
|
+
<!-- Google Analytics (https://www.google.com/analytics) -->
|
1146
|
+
<script>
|
1147
|
+
!function(j,e,k,y,l,L){j.GoogleAnalyticsObject=y,j[y]||(j[y]=function(){
|
1148
|
+
(j[y].q=j[y].q||[]).push(arguments)}),j[y].l=+new Date,l=e.createElement(k),
|
1149
|
+
L=e.getElementsByTagName(k)[0],l.src='https://www.google-analytics.com/analytics.js',
|
1150
|
+
L.parentNode.insertBefore(l,L)}(window,document,'script','ga');
|
1151
|
+
|
1152
|
+
ga('create', 'UA-50755011-1', 'jekyllrb.com');
|
1153
|
+
ga('send', 'pageview');
|
1154
|
+
|
1155
|
+
</script>
|
1156
|
+
|
1157
|
+
|
1158
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script>
|
1159
|
+
<script type="text/javascript"> docsearch({
|
1160
|
+
apiKey: '50fe39c839958dfad797000f33e2ec17',
|
1161
|
+
indexName: 'jekyllrb',
|
1162
|
+
inputSelector: '#docsearch-input',
|
1163
|
+
enhancedSearchInput: true,
|
1164
|
+
debug: false // Set debug to true if you want to inspect the dropdown
|
1165
|
+
});
|
1166
|
+
</script>
|
1167
|
+
|
1168
|
+
</body>
|
1169
|
+
</html>
|