liquid 过滤器
过滤器 (|)
多个过滤器可以共同作用于同一个输出,并按照从左到右的顺序执行。
| Filters | 作用 | 注意 | 参数 |
|---|---|---|---|
| abs | 返回一个数字的绝对值。 | 如果组成字符串的各个字符全是数字,abs 也能够对此字符串求绝对值。 |
—— |
| append | 将两个字符串拼接起来并返回拼接之后的值。 | append 同样能够作用于变量 |
[String|Object] |
| at_least | 将数字限制在最小值。 | output >= least | [Number] |
| at_most | 将数字限制在最大值。 | output <= most | [Number] |
| capitalize | 将字符串首字母转为大写。 | `{{ "my great title" | capitalize }} 这里只有M`会转成大写 |
| ceil | 向上取整并返回一个最接近的整数。 | `{{ 1.2 | ceil }} 返回2` |
| compact | 删除数组中的所有 nil 值。 |
—— | |
| concat | 合并两个数组赋给一个新的数组 | [Array] | |
| date | 将时间戳(timestamp)转换为另一种日期格式。 | [String] | |
| default | 指定一个默认值,以防预期的值不存在。 | nil和false都会调用默认值 |
[String|Number] |
| divided_by | 除法,向下取整并返回一个最接近的整数。 | 结果与除数是同一数据类型 | [Number] |
| downcase | 用于将字符串中的各个字符转换为小写形式。 | —— | |
| escape | 将字符串中的某些字符替换为转义序列 | ''=' |
—— |
| escape_once | 转义一个字符串并且不修改已经转义过的实体 | —— | |
| first | 返回数组的第一项。 | —— | |
| floor | 向下取整并返回一个最接近的整数。 | `{{ 1.2 | ceil }} 返回1` |
| join | 将数组中的各个字符串合并为一个字符串 | [String] | |
| last | 返回数组中的最后一项。 | —— | |
| lstrip | 删除字符串左侧的所有空白符(制表符、空格和换行符) | 字符串中间的所有空白符不受影响。 | —— |
| map | 从对象(object)中提取指定名称的属性的值,并用这些值构建一个数组。 | [String] | |
| minus | 从一个数中减去另一个数。 | [Number] | |
| modulo | 返回除法运算的余数。 | [Number] | |
| newline_to_br | 将所有换行符(\n) 替换为 HTML 的 (<br/>) 标签。 |
—— | |
| plus | 两个数相加。 | [Number] | |
| prepend | 在一个字符串前面附加另一个字符串。 | [String|Object] | |
| remove | 从一个字符串中删除所有出现的另一个子字符串。 | [String] | |
| remove_first | 从一个字符串中仅仅删除第一次出现的另一个子字符串。 | [String] | |
| replace | 将参数中给出的第一个参数全部替换为第二个参数。 | ([String],[String]) | |
| replace_first | 将字符串中出现的第一个参数替换为第二个参数。 | ([String],[String]) | |
| reverse | 将数组中的所有项的顺序反转。 | —— | |
| round | 将浮点数舍入到最近的整数,或者,如果传入的参数是一个数值的话,将浮点数舍入到参数指定的小数位。 | [——|Number] | |
| rstrip | 将字符串右侧的所有空白字符(制表符 - tab、空格符 - space 和 回车符 - newline)删除。 | 字符串中间的所有空白符不受影响。 | —— |
| size | 返回字符串中所包含的字符数或者数组中所包含的条目数量。 | —— | |
| slice | 切割start-end的字符串 | ([Number],[Number]) | |
| sort | 对数组中的所有进行排序。排序后的数组是按照区分大小写的顺序排列的。 | —— | |
| sort_natural | 对数组进行排序,并且大小写无关。 | —— | |
| split | 根据参数传入的分隔符将字符串分解为数组。 | [String] | |
| strip | 删除字符串左右两侧的所有空白符号(包括制表符、空格、换行符)。 | 字符串中间的所有空白符不受影响。 | —— |
| strip_html | 从字符串中删除所有 HTML 标签。 | —— | |
| strip_newlines | 从字符串中删除所有换行字符(newline character) | —— | |
| times | 将一个数乘以另一个数。 | [Number] | |
| truncate | truncate 将字符串截短为指定的字符个数。 |
([Number],[String]) | |
| truncatewords | 将字符串截短为指定的单词个数。如果截断则追加 "..." | 允许自定义省略号 | ([Number],[String]) |
| uniq | 删除数组中的所有冗余项。 | 去重 | —— |
| upcase | 将字符串中的每个字符都转换为大写形式。 | —— | |
| url_decode | 对于作为 URL 进行编码或通过 url_encode 编码的字符串进行解码。 |
{{ "%27Stop%21%27+said+Fred" | url_decode }} 这里会解析出 'Stop!' said Fred | —— |
| url_encode | 将字符串中非 URL 安全的字符转换为百分号编码(percent-encoded)的字符。 | “ ”=“+” / "@"="%40" | —— |
-
append
( 尾部追加 ) -
prepend
( 头部追加 ) -
capitalize
( 首字母大写 ){{ "adam" | capitalize | prepend: "Hello " | append: "!" }} -
split
按传入的分隔符分解字符串成数组{% assign beatles = "John, Paul, George, Ringo" | split: ", " %} -
compact
删除数组中的所有 `nil` 值。{% assign site_categories = site.pages | map: 'category' %} {% for category in site_categories %} {{ category }} {% endfor %} ------------------------------------------------------output: business celebrities lifestyle {% assign site_categories = site.pages | map: 'category' | compact %} {% for category in site_categories %} {{ category }} {% endfor %} ------------------------------------------------------output: business celebrities lifestyle

浙公网安备 33010602011771号