แชร์ผ่าน


ตัวกรอง Liquid ที่พร้อมใช้งาน

ตัวกรอง Liquid จะถูกใช้เพื่อปรับเปลี่ยนผลลัพธ์ของสตริงที่ หมายเลข ตัวแปร และออบเจ็กต์ ตัวกรองจะถูกแยกออกจากค่าไปยังที่ที่จะถูกนำไปใช้โดย |

{{ 'hal 9000' | upcase }} <!-- Output: HAL 9000 -->

ตัวกรองบางตัวยอมรับพารามิเตอร์ นอกจากนี้ตัวกรองยังสามารถถูกรวม และถูกใช้ตามลำดับจากซ้ายไปขวา

{{ 2 | times: 2 | minus: 1 }} <!-- Output: 3 -->

{{ "Hello, " | append: user.firstname }} <!-- Output: Hello, Dave -->

ส่วนด้านล่างอธิบายเกี่ยวกับตัวกรองต่าง ๆ

ตัวกรองอาร์เรย์

ตัวกรองอาร์เรย์ถูกใช้ในการทำงานกับ อาร์เรย์

ชุดงาน

แบ่งอาร์เรย์ออกเป็นหลายๆอาร์เรย์ของขนาดที่กำหนดไว้

รหัส

{% assign batches = entityview.records | batch: 2 %}

{% for batch in batches %}

<ul>

{% for item in batch %}

<li>{{ item.fullname }}</li>

{% endfor %}

</ul>

{% endfor %}

ผลลัพธ์

<ul>

<li>John Smith</li>

<li>Dave Thomas</li>

</ul>

<ul>

<li>Jake Johnson</li>

<li>Jack Robinson</li>

</ul>

CONCAT

รวมอาร์เรย์สองรายการเป็นอาร์เรย์ใหม่แบบเดี่ยว

เมื่อกำหนดให้รายการเดี่ยวเป็นพารามิเตอร์ concat จะส่งกลับค่าอาร์เรย์ใหม่ที่ประกอบด้วยอาร์เรย์ดั้งเดิม กับรายการที่ระบุให้เป็นองค์ประกอบสุดท้าย

รหัส

Group #1: {{ group1 | join: ', ' }}

Group #2: {{ group2 | join: ', ' }}

Group #1 + Group #2: {{ group1 | concat: group2 | join: ', ' }}

ผลลัพธ์

Group #1: John, Pete, Hannah

Group #2: Joan, Bill

Group #1 + Group #2: John, Pete, Hannah, Joan, Bill

ยกเว้น

เลือกออบเจ็กต์ทั้งหมดในอาร์เรย์ซึ่งแอตทริบิวต์ที่กำหนดไม่มีค่าที่กำหนดให้ (ซึ่งเป็นค่าผกผันของ โดยที่)

รหัส

{% assign redmond = entityview.records | except: 'address1_city', 'Redmond' %}

{% for item in redmond %}

{{ item.fullname }}

{% endfor %}

เอาท์พุท

Jack Robinson

ที่หนึ่ง

ส่งกลับองค์ประกอบแรกของอาร์เรย์

ก่อน ยังสามารถใช้กับเครื่องหมายจุดแบบพิเศษ ในกรณีที่ต้องการใช้ภายในแท็ก

รหัส

{% assign words = This is a run of text | split:   %}

{{ words | first }}

{% if words.first == This %}

The first word is This.

{% endif %}

ผลลัพธ์

This

The first word is This.

จัดกลุ่มตาม

จัดกลุ่มรายการในอาร์เรย์ โดยแอตทริบิวต์ที่กำหนด

รหัส

{% assign groups = entityview.records | group_by: 'address1_city' %}

{% for group in groups %}

{{ group.key }}:

{% for item in group.items %}

{{ item.fullname }}

{% endfor %}

{% endfor %}

ผลลัพธ์

Redmond:

John Smith

Dave Thomas

Jake Johnson

New York:

Jack Robinson

เข้าร่วม

รวมองค์ประกอบของอาร์เรย์ ด้วยอักขระที่ถูกส่งผ่านเป็นพารามิเตอร์ ผลลัพธ์เป็นสตริงเดี่ยว

รหัส

{% assign words = This is a run of text | split:   %}

{{ words | join: ,  }}

ผลลัพธ์

This, is, a, run, of, text

สุดท้าย

ส่งกลับองค์ประกอบสุดท้ายของอาร์เรย์

สุดท้าย ยังสามารถใช้กับเครื่องหมายจุดแบบพิเศษ ในกรณีที่ต้องการใช้ภายในแท็ก

รหัส

{% assign words = This is a run of text | split:   -%}

{{ words | last }}

{% if words.last == text -%}

The last word is text.

{% endif -%}

เอาท์พุท

text

The last word is text.

order_by

ส่งกลับองค์ประกอบของอาร์เรย์โดยเรียงตามแอตทริบิวต์ที่กำหนดขององค์ประกอบของอาร์เรย์

อีกทางหนึ่งคือ คุณสามารถให้ คำอธิบาย เป็นพารามิเตอร์ที่สอง เพื่อจัดเรียงองค์ประกอบในลำดับจากมากไปหาน้อย แทนที่จะเป็นจากน้อยไปหามาก

รหัส

{{ entityview.records | order_by: 'fullname' | join: ', ' }}

{{ entityview.records | order_by: 'fullname', 'desc' | join: ', ' }}

เอาท์พุท

Dave Thomas, Jack Robinson, Jake Johnson, John Smith

John Smith, Jake Johnson, Jack Robinson, Dave Thomas

แบบสุ่ม

ส่งคืนรายการที่เลือกโดยการสุ่มครั้งเดียวจากอาร์เรย์

รหัส

{{ group1 | join: ', ' }}

{{ group1 | random }}

เอาท์พุท

John, Pete, Hannah

Pete

เลือก

เลือกค่าของแอตทริบิวต์ที่กำหนดสำหรับสินค้าแต่ละรายการในอาร์เรย์ และส่งกลับค่าเหล่านี้เป็นแบบอาร์เรย์

รหัส

{{ entityview.records | select: 'address1_city' | join: ', ' }}

ผลลัพธ์

Redmond, New York

สลับ

เมื่อนำไปใช้กับอาร์เรย์ ส่งกลับค่าอาร์เรย์ใหม่ด้วยรายการเดิม ในการเรียงลำดับแบบสุ่ม

รหัส

{{ group1 | join: ', ' }}

{{ group1 | shuffle | join: ', ' }}

ผลลัพธ์

John, Pete, Hannah

Hannah, John, Pete

ขนาด

ส่งกลับจำนวนของรายการในอาร์เรย์

ขนาด ยังสามารถใช้กับเครื่องหมายจุดแบบพิเศษ ในกรณีที่ต้องการใช้ภายในแท็ก

รหัส

{% assign words = This is a run of text | split:   -%}

{{ words | size }}

{% if words.size == 6 -%}

The text contains 6 words.

{% endif -%}

ผลลัพธ์

6

The text contains 6 words.

ข้าม

ข้ามจำนวนที่กำหนดของรายการที่อยู่ในอาร์เรย์ และส่งกลับส่วนที่เหลือ

รหัส

{% assign words = This is a run of text | split:   %}

{{ words | skip: 3 | join: ', ' }}

ผลลัพธ์

run, of, text

ใช้

ใช้จำนวนที่กำหนดของรายการจากอาร์เรย์ ที่ส่งคืนรายการที่ใช้แล้ว

รหัส

{% assign words = This is a run of text | split:   %}

{{ words | take: 3 | join: ', ' }}

เอาท์พุท


This, is, a

then_by

เพิ่มการจัดลำดับเพิ่มเติมไปยังอาร์เรย์ที่ได้ถูกเรียงลำดับแล้วโดย order_by

อีกทางหนึ่งคือ คุณสามารถให้ คำอธิบาย เป็นพารามิเตอร์ที่สอง เพื่อจัดเรียงองค์ประกอบในลำดับจากมากไปหาน้อย แทนที่จะเป็นจากน้อยไปหามาก

รหัส

{{ entityview.records | order_by: 'address1_city' | then_by: 'fullname' | join: ', ' }}

{{ entityview.records | order_by: 'address1_city' | then_by: 'fullname', 'desc' | join: ', ' }}

ผลลัพธ์

Dave Thomas, Jack Robinson, Jake Johnson, John Smith

John Smith, Jake Johnson, Jack Robinson, Dave Thomas

ที่ซึ่ง

เลือกออบเจ็กต์ทั้งหมดในอาร์เรย์ซึ่งแอตทริบิวต์ที่กำหนดมีค่าที่กำหนดให้

รหัส

{% assign redmond = entityview.records | where: 'address1_city', 'Redmond' %}

{% for item in redmond %}

{{ item.fullname }}

{% endfor %}

ผลลัพธ์

John Smith

Dave Thomas

Jake Johnson

ตัวกรองวันที่

ตัวกรองวันที่สามารถใช้สำหรับการคำนวณวันที่ หรือแปลงค่าวันที่และเวลาเป็นรูปแบบต่าง ๆ

วันที่

จัดรูปแบบค่าวันที่และเวลาโดยใช้สตริงรูปแบบ .NET

สตริงรูปแบบวันที่และเวลามาตรฐาน

สตริงรูปแบบวันที่และเวลาแบบกำหนดเอง

รหัส

{{ now | date: 'g' }}

{{ now | date: 'MMMM dd, yyyy' }}

เอาท์พุท

5/7/2018 7:20 AM

May 07, 2018

date_add_days

เพิ่มจำนวนวันทั้งหมดและที่เป็นเศษส่วนที่ระบุ ไปยังค่าวันที่และเวลา พารามิเตอร์สามารถเป็นค่าบวกหรือค่าลบ

รหัส

{{ now }}

{{ now | date_add_days: 1 }}

{{ now | date_add_days: -2.5 }}

เอาท์พุท

5/7/2018 7:20:46 AM

5/8/2018 7:20:46 AM

5/4/2018 7:20:46 PM

date_add_hours

เพิ่มจำนวนชั่วโมงทั้งหมดและที่เป็นเศษส่วนที่ระบุ ไปยังค่าวันที่และเวลา พารามิเตอร์สามารถเป็นค่าบวกหรือค่าลบ

รหัส

{{ now }}

{{ now | date_add_hours: 1 }}

{{ now | date_add_hours: -2.5 }}

เอาท์พุท

5/7/2018 7:20:46 AM

5/7/2018 8:20:46 AM

5/7/2018 4:50:46 AM

date_add_minutes

เพิ่มจำนวนนาทีทั้งหมดและที่เป็นเศษส่วนที่ระบุ ไปยังค่าวันที่และเวลา พารามิเตอร์สามารถเป็นค่าบวกหรือค่าลบ

รหัส

{{ now }}

{{ now | date_add_minutes: 10 }}

{{ now | date_add_minutes: -2.5 }}

เอาท์พุท

5/7/2018 7:20:46 AM

5/7/2018 7:30:46 AM

5/7/2018 7:18:16 AM

date_add_months

เพิ่มจำนวนเดือนทั้งหมดและที่เป็นเศษส่วนที่ระบุ ไปยังค่าวันที่และเวลา พารามิเตอร์สามารถเป็นค่าบวกหรือค่าลบ

รหัส

{{ now }}

{{ now | date_add_months: 1 }}

{{ now | date_add_months: -2 }}

เอาท์พุท

5/7/2018 7:20:46 AM

6/7/2018 7:20:46 AM

3/7/2018 7:20:46 AM

date_add_seconds

เพิ่มจำนวนวินาทีทั้งหมดและที่เป็นเศษส่วนที่ระบุ ไปยังค่าวันที่และเวลา พารามิเตอร์สามารถเป็นค่าบวกหรือค่าลบ

รหัส

{{ now }}

{{ now | date_add_seconds: 10 }}

{{ now | date_add_seconds: -1.25 }}

เอาท์พุท

5/7/2018 7:20:46 AM

5/7/2018 7:20:56 AM

5/7/2018 7:20:45 AM

date_add_years

เพิ่มจำนวนปีทั้งหมดและที่เป็นเศษส่วนที่ระบุ ไปยังค่าวันที่และเวลา พารามิเตอร์สามารถเป็นค่าบวกหรือค่าลบ

รหัส

{{ now }}

{{ now | date_add_years: 1 }}

{{ now | date_add_years: -2 }}

เอาท์พุท

5/7/2018 7:20:46 AM

5/7/2019 7:20:46 AM

5/7/2016 7:20:46 AM

date_to_iso8601

จัดรูปแบบค่าวันที่และเวลาตามมาตรฐาน ISO 8601 มีประโยชน์เมื่อมีการสร้าง ตัวดึงข้อมูลอะตอม หรือองค์ประกอบ <เวลา> HTML5

รหัส

{{ now | date_to_iso8601 }}

เอาท์พุท

2018-05-07T07:20:46Z

date_to_rfc822

จัดรูปแบบค่าวันที่และเวลาตามมาตรฐาน RFC 822 มีประโยชน์เมื่อมีการสร้าง ตัวดึงข้อมูล RSS

รหัส

{{ now | date_to_rfc822 }}

เอาท์พุท

Mon, 07 May 2018 07:20:46 Z

ตัวกรอง Escape

ลำดับ Escape เป็นวิธีรวมอักขระพิเศษในสตริงโดยไม่ขัดแย้งกับการตีความอักขระเหล่านั้นตามปกติในภาษาโปรแกรมหรือรูปแบบ

ตัวกรอง Escape ต่อไปนี้จะแทนที่อักขระสตริงด้วยลำดับ Escape หรือลบอักขระสตริงที่ไม่ถูกต้องตามชนิดปลายทาง

Escape

HTML-escapes เป็นสตริง

รหัส

{{ '<p>test</p>' | escape }}

เอาท์พุท

&lt;p&gt;test&lt;/p&gt;

html_safe_escape

แปลงสตริง HTML ที่กำหนดให้เป็นส่วนย่อย HTML ที่ปลอดภัย

รหัส

{{ '<img src="images/myimage.jpg" onerror="alert(1);">' | html_safe_escape }}

เอาท์พุท

<img src="images/myimage.jpg">

url_escape

URI-escape สตริง สำหรับการรวมใน URL

รหัส

{{ 'This & that//' | url_escape }}

เอาท์พุท

This+%26+that%2F%2F

xml_escape

XML-escape สตริง สำหรับการรวมในผลลัพธ์ XML

รหัส

{{ '<p>test</p>' | xml_escape }}

เอาท์พุท

&lt;p&gt;test&lt;/p&gt;

ตัวกรองรายการ

มีการใช้ตัวกรองรายการในการทำงานกับค่าแอตทริบิวต์ รายการเอนทิตี บางค่า และเพื่อช่วยในการสร้างมุมมองรายการ

current_sort

นิพจน์การเรียงลำดับที่กำหนด ส่งคืนทิศทางการเรียงลำดับปัจจุบันสำหรับแอตทริบิวต์ที่กำหนด

รหัส

{{ 'name ASC, createdon DESC' | current_sort: 'createdon' }}

เอาท์พุท

DESC

metafilters

แยกวิเคราะห์ค่า JSON ของ filter_definition ของ entitylist ลงในออบเจ็กต์กลุ่มตัวเลือกตัวกรอง

metafilters สามารถเลือกให้มีแบบสอบถามตัวกรองแอตทริบิวต์ปัจจุบันและ รายการเอนทิตี ปัจจุบันได้ ซึ่งอนุญาตให้ออบเจ็กต์ตัวกรองที่ส่งคืนถูกแฟล็กเป็นถูกเลือก หรือถูกยกเลิกการเลือกได้ อย่างใดอย่างหนึ่ง

รหัส

{% assign filters = entitylist | metafilters: params.mf, entityview %}
{% if filters.size > 0 %}
  <ul id=entitylist-filters>
    {% for filter in filters %}
      <li class=entitylist-filter-option-group>
        {% if filter.selection_mode == 'Single' %}
          {% assign type = 'radio' %}
        {% else %}
          {% assign type = 'checkbox' %}
        {% endif %}
        <h4 class=entitylist-filter-option-group-label
          data-filter-id={{ filter.id | h }}>
          {{ filter.label | h }}
        </h4>
        <ul>
          {% for option in filter.options %}
            <li class=entitylist-filter-option>
              {% if option.type == 'text' %}
                <div class=input-group entitylist-filter-option-text>
                  <span class=input-group-addon>
                    <span class=fa fa-filter aria-hidden=true></span>
                  </span>
                  <input class=form-control
                    type=text
                    name={{ filter.id | h }}
                    value={{ option.text | h }} />
                </div>
              {% else %}
                <div class={{ type | h }}>
                  <label>
                    <input
                      type={{ type | h }}
                      name={{ filter.id | h }}
                      value={{ option.id | h }}
                      {% if option.checked %}
                        checked=checked
                        data-checked=true{% endif %}
                      />
                    {{ option.label | h }}
                  </label>
                </div>
              {% endif %}
            </li>
          {% endfor %}
        </ul>
      </li>
    {% endfor %}
  </ul>
  <button class=btn btn-default data-serialized-query=mf data-target=#entitylist-filters>Apply Filters</button>
{% endif %}

reverse_sort

ทิศทางการเรียงลำดับที่กำหนด ส่งคืนทิศทางการเรียงลำดับที่ตรงกันข้าม

รหัส

<!-- Sort direction is not case-sensitive -->

{{ 'ASC' | reverse_sort }}

{{ 'desc' | reverse_sort }}

ผลลัพธ์

DESC

ASC

ตัวกรองเครื่องหมายคณิตศาสตร์

ตัวกรองเครื่องหมายคณิตศาสตร์อนุญาตให้คุณดำเนินการทางคณิตศาสตร์ใน หมายเลข ได้

เนื่องด้วยตัวกรองทั้งหมด ตัวกรองทางคณิตศาสตร์สามารถถูกรวม และถูกใช้ตามลำดับจากซ้ายไปขวา

รหัส

{{ 10 | times: 2 | minus: 5 | divided_by: 3 }}

ผลลัพธ์

5

ceil

ปัดค่าขึ้นให้เป็นจำนวนเต็มที่ใกล้ที่สุด

รหัส

{{ 4.6 | ceil }}

{{ 4.3 | ceil }}

เอาท์พุท

5

5

divided_by

หารตัวเลขด้วยอีกตัวเลขหนึ่ง

รหัส

{{ 10 | divided_by: 2 }}

{{ 10 | divided_by: 3 }}

{{ 10.0 | divided_by: 3 }}

เอาท์พุท

5

3

3.333333

พื้น

ปัดค่าลงไปที่จำนวนเต็มที่ใกล้ที่สุด

รหัส

{{ 4.6 | floor }}

{{ 4.3 | floor }}

ผลลัพธ์

4

4

ลบ

ลบตัวเลขออกจากอีกตัวเลขหนึ่ง

รหัส

<!-- entityview.page = 11 -->

{{ entityview.page | minus: 1 }}

{{ 10 | minus: 1.1 }}

{{ 10.1 | minus: 1 }}

ผลลัพธ์

10

9

9.1

modulo

หารตัวเลขด้วยอีกตัวเลขหนึ่ง และส่งคืนค่าเศษเหลือ

รหัส

{{ 12 | modulo: 5 }}

ผลลัพธ์

2

บวก

เพิ่มตัวเลขไปยังอีกตัวเลขหนึ่ง

รหัส

<!-- entityview.page = 11 -->

{{ entityview.page | plus: 1 }}

{{ 10 | plus: 1.1 }}

{{ 10.1 | plus: 1 }}

ผลลัพธ์

12

11

11.1

กลม

ปัดค่าเป็นจำนวนเต็มที่ใกล้ที่สุดหรือจำนวนทศนิยมที่ระบุ

รหัส

{{ 4.6 | round }}

{{ 4.3 | round }}

{{ 4.5612 | round: 2 }}

ผลลัพธ์

5

4

4.56

คูณ

คูณตัวเลขด้วยอีกตัวเลขหนึ่ง

รหัส

{{ 10 | times: 2 }}

{{ 10 | times: 2.2 }}

{{ 10.1 | times: 2 }}

ผลลัพธ์

20

20

20.2

ตัวกรองสตริง

ตัวกรองสตริงควบคุม สตริง

ผนวก

ผนวกสตริงไปที่ส่วนท้ายของอีกสตริงหนึ่ง

รหัส

{{ 'filename' | append: '.js' }}

เอาท์พุท

filename.js

ทำให้เป็นตัวพิมพ์ใหญ่

ทำให้ทุกคำในสตริงเป็นตัวพิมพ์ใหญ่

รหัส

{{ 'capitalize me' | capitalize }}

เอาท์พุท

Capitalize Me

ตัวพิมพ์เล็ก

แปลงสตริงเป็นตัวพิมพ์เล็ก

รหัส

{{ 'MIxed Case TExt' | downcase }}

เอาท์พุท

mixed case text

newline_to_br

แทรกแท็ก HTML ตัวแบ่งบรรทัด <br /> ที่ตัวแบ่งบรรทัดแต่ละตัวในสตริง

รหัส

{% capture text %}

A

B

C

{% endcapture %}

{{ text | newline_to_br }}

ผลลัพธ์

A<br />

B<br />

C<br />

เพิ่ม

เพิ่มสตริงไปที่ส่วนต้นของอีกสตริงหนึ่ง

รหัส

{{ 'Jane Johnson' | prepend: 'Dr. ' }}

ผลลัพธ์

Dr. Jane Johnson

เอาออก

เอาสตริงย่อยที่เกิดขึ้นทั้งหมดออกจากสตริง

รหัส

{{ 'Hello, Dave. How are you, Dave?' | remove: 'Dave' }}

เอาท์พุท

Hello, . How are you, ?

remove_first

เอาสตริงย่อยที่เกิดขึ้นครั้งแรกออกจากสตริง

รหัส

{{ 'Hello, Dave. How are you, Dave?' | remove_first: 'Dave' }}

ผลลัพธ์

Hello, . How are you, Dave?

แทนที่

แทนที่สตริงที่เกิดขึ้นทั้งหมดด้วยสตริงย่อย

รหัส

{{ 'Hello, Dave. How are you, Dave?' | replace: 'Dave', 'John' }}

เอาท์พุท

Hello, John. How are you, John?

replace_first

แทนที่สตริงที่เกิดขึ้นครั้งแรกด้วยสตริงย่อย

รหัส

{{ 'Hello, Dave. How are you, Dave?' | replace_first: 'Dave', 'John' }}

ผลลัพธ์

Hello, John. How are you, Dave?

แบ่ง

ตัวกรอง แยก ใช้สตริงย่อยเป็นพารามิเตอร์ สตริงย่อยถูกใช้เป็นตัวคั่นเพื่อแบ่งสตริงเป็นอาร์เรย์

รหัส

{% assign words = This is a demo of the split filter | split: ' ' %}

First word: {{ words.first }}

First word: {{ words[0] }}

Second word: {{ words[1] }}

Last word: {{ words.last }}

All words: {{ words | join: ', ' }}

เอาท์พุท

First word: This

First word: This

Second word: is

Last word: filter

All words: This, is, a, demo, of, the, split, filter

strip_html

ถอดแท็ก HTML ทั้งหมดออกจากสตริง

รหัส

<p>Hello</p>

เอาท์พุท

Hello

strip_newlines

ถอดตัวคั่นใดๆออกจากสตริง

รหัส

{% capture text %}

A

B

C

{% endcapture %}

{{ text | strip_newlines }}

เอาท์พุท

ABC

text_to_html

จัดรูปแบบสตริงข้อความธรรมดาเป็น HTML อย่างง่าย ข้อความถูกเข้ารหัส HTML บล็อกของข้อความที่ถูกแยกโดยบรรทัดว่างจะถูกหุ้มในแท็ก <p> ของย่อหน้า ตัวคั่นเดี่ยวถูกแทนที่ด้วย <br> และ URL จะถูกแปลงเป็นการเชื่อมโยงหลายมิติ

รหัส

{{ note.notetext | text_to_html }}

เอาท์พุท

<p>This is the first paragraph of notetext. It contains a URL: <a href="https://example.com/" rel="nofollow">https://example.com</a></p>

<p>This is a second paragraph.</p>

ตัดให้สั้นลง

ตัดทอนสตริงจนถึงจำนวนอักขระที่ระบุ จุดไข่ปลา (...) จะถูกผนวกเข้ากับสริง และถูกรวมอยู่ในการตรวจนับอักขระ

รหัส

{{ 'This is a long run of text.' | truncate: 10 }}

เอาท์พุท

This is...

truncate_words

ตัดทอนสตริงจนถึงจำนวนคำที่ระบุ จุดไข่ปลา (...) จะถูกผนวกเข้ากับสตริงที่ถูกตัดทอน

รหัส

{{ 'This is a long run of text.' | truncate_words: 3 }}

เอาท์พุท

This is a...

ตัวพิมพ์ใหญ่

แปลงสตริงเป็นตัวพิมพ์ใหญ่

รหัส

{{ 'MIxed Case TExt' | upcase }}

เอาท์พุท

MIXED CASE TEXT

พิมพ์ตัวกรอง

พิมพ์ตัวกรองช่วยให้คุณสามารถแปลงค่าชนิดใดชนิดหนึ่งเป็นชนิดอื่นๆได้

บูลีน

พยายามแปลงค่าสตริงเป็นบูลีน ถ้าค่าเป็นแบบบูลีนอยู่แล้ว มีการส่งคืนโดยไม่ถูกเปลี่ยนแปลง ถ้าไม่สามารถแปลงค่าเป็นแบบบูลีนได้ จะมีการส่งคืนเป็นไม่มีค่า

ตัวกรองนี้จะยังยอมรับ เปิด, เปิดใช้งานแล้ว หรือ ใช่ เป็นจริง และ ปิด, ถูกปิดการใช้งาน และ ไม่ เป็นเท็จ

รหัส

{{ true | boolean }}

{{ 'false' | boolean }}

{{ 'enabled' | boolean }}

{{ settings['something/enabled'] | boolean | default: false }}

ผลลัพธ์

true

false

true

false

เลขทศนิยม

พยายามแปลงค่าสตริงเป็นตัวเลขทศนิยม ถ้าค่าเป็นตัวเลขทศนิยมอยู่แล้ว มีการส่งคืนโดยไม่ถูกเปลี่ยนแปลง ถ้าไม่สามารถแปลงค่าเป็นตัวเลขทศนิยมได้ จะมีการส่งคืนเป็นไม่มีค่า

รหัส

{{ 10.1 | decimal }}

{{ '3.14' | decimal }}

{{ 'text' | decimal | default: 3.14 }}

ผลลัพธ์

10.1

3.14

3.14

จำนวนเต็ม

พยายามแปลงค่าสตริงเป็นจำนวนเต็ม ถ้าค่าเป็นจำนวนเต็มอยู่แล้ว มีการส่งคืนโดยไม่ถูกเปลี่ยนแปลง ถ้าไม่สามารถแปลงค่าเป็นจำนวนเต็มได้ จะมีการส่งคืนเป็นไม่มีค่า

รหัส

{{ 10 | integer }}

{{ '10' | integer }}

{{ '10.1' | integer }}

{{ 'text' | integer | default: 2 }}

เอาท์พุท

10

10

2

สตริง

พยายามแปลงค่าเป็นการแสดงแบบสตริง ถ้าค่าเป็นสตริงอยู่แล้ว มีการส่งคืนโดยไม่ถูกเปลี่ยนแปลง ถ้าค่าคือ null null จะถูกส่งคืน

ตัวกรอง URL

ตัวกรอง URL ช่วยให้คุณสามารถสร้างหรือแยกส่วนของ URL ได้

add_query

ผนวกพารามิเตอร์สตริงแบบสอบถามไปยัง URL ถ้ามีพารามิเตอร์ใน URL อยู่แล้ว ค่าพารามิเตอร์จะถูกอัปเดต

ถ้าตัวกรองนี้ถูกนำไปใช้กับ URL แบบสัมบูรณ์ทั้งหมด URL แบบสัมบูรณ์ที่อัปเดตแล้วจะเป็นผลลัพธ์ ถ้ามีการนำใช้ไปกับพาธ พาธที่อัปเดตจะเป็นผลลัพธ์

รหัส

{{ 'https://example.com/path?page=1' | add_query: 'foo', 'bar' }}

{{ '/path?page=1' | add_query: 'page', 2 }}

เอาท์พุท

https://example.com/path?page=1&foo=bar

/path?page=2

พื้นฐาน

ได้รับ URL พื้นฐานของ URL ที่ระบุ

รหัส

{{ 'https://example.com/path?foo=bar&page=2' | base }}

ผลลัพธ์

https://example.com

โฮสต์

ได้รับส่วนโฮสต์ของ URL

รหัส

{{ 'https://example.com/path?foo=bar&page=2' | host }}

เอาท์พุท

example.com

พาธ

ได้รับส่วนเส้นทางของ URL

รหัส

{{ 'https://example.com/path?foo=bar&page=2' | path }}

{{ '/path?foo=bar&page=2' | path }}

เอาท์พุท

/path

/path

path_and_query

ได้รับส่วนเส้นทางและการสอบถามของ URL

รหัส

{{ 'https://example.com/path?foo=bar&page=2' | path_and_query }}

{{ '/path?foo=bar&page=2' | path_and_query }}

เอาท์พุท

/path?foo=bar&page=2

/path?foo=bar&page=2

พอร์ต

ได้รับหมายเลขพอร์ตของ URL

รหัส

{{ 'https://example.com/path?foo=bar&page=2' | port }}

{{ 'https://example.com/path?foo=bar&page=2' | port }}

{{ 'https://example.com:9000/path?foo=bar&page=2' | port }}

เอาท์พุท

80

443

9000

remove_query

ลบพารามิเตอร์สตริงแบบสอบถามออกจาก URL ถ้าไม่มีพารามิเตอร์อยู่ใน URL จะมีการส่งคืน URL โดยไม่เปลี่ยนแปลง

ถ้าตัวกรองนี้ถูกนำไปใช้กับ URL แบบสัมบูรณ์ทั้งหมด URL แบบสัมบูรณ์ที่อัปเดตแล้วจะเป็นผลลัพธ์ ถ้ามีการนำใช้ไปกับพาธ พาธที่อัปเดตจะเป็นผลลัพธ์

รหัส

{{ 'https://example.com/path?page=1' | remove_query: 'page' }}

{{ '/path?page=1' | remove_query: 'page' }}

เอาท์พุท

https://example.com/path

/path

แบบแผน

ได้รับส่วนแบบแผนของ URL

รหัส

{{ 'https://example.com/path?foo=bar&page=2' | scheme }}

{{ 'https://example.com/path?foo=bar&page=2' | scheme }}

ผลลัพธ์

http

https

ตัวกรองเพิ่มเติม

ตัวกรองเหล่านี้ให้ฟังก์ชันทั่วไปที่มีประโยชน์

ค่าเริ่มต้น

ส่งคืนค่าเริ่มต้นสำหรับตัวแปรใดๆ ที่ไม่มีค่าที่กำหนดไว้ (ซึ่งคือ ไม่มีค่า)

รหัส

{{ snippets[Header] | default: 'My Website' }}

เอาท์พุท

<!-- If a snippet with the name Header returns null -->

My Website

file_size

เมื่อมีการนำไปใช้กับค่าตัวเลขที่แสดงถึงไบต์จำนวนมาก จะส่งคืนขนาดไฟล์ที่มีการจัดรูปแบบด้วยหน่วยของมาตราส่วนที่เหมาะสม

อีกทางหนึ่งคือ พารามิเตอร์ที่มีความแม่นยำสามารถถูกส่งผ่านได้ เพื่อควบคุมจำนวนตำแหน่งทศนิยมในผลลัพธ์ ความแม่นยำค่าเริ่มต้นคือ 1

รหัส

{{ 10000000 | file_size }}

{{ 2050 | file_size: 0 }}

{{ entity.notes.first.filesize | file_size: 2 }}

เอาท์พุท

9.5 MB

2 KB

207.14 KB

h

ระบุการแสดง HTML ของแอตทริบิวต์ ตัวอย่างเช่น การแสดงผลการแสดง HTML ของ แอตทริบิวต์ XML ของการสอบถาม FetchXML

รหัส

{{ samplequery.xml | h }}

เอาท์พุท

<fetch mapping="logical" count="5000" page="1" returntotalrecordcount="true"> <entity name="contact"> <attribute name="fullname" /> </entity> </fetch>

has_role

เมื่อมีการนำไปใช้กับ ผู้ใช้ ให้ส่งคืน true ถ้าผู้ใช้เป็นของบทบาทที่กำหนดไว้ ส่งคืน false ถ้าไม่

รหัส

{% assign is_admin = user | has_role: 'Administrators' %}

{% if is_admin %}

User is an administrator.

{% endif %}

ไม่ตายตัว

แสดงสตริงเป็นรหัสแบบไม่ตายตัว โค้ดนี้จะมีการเข้าถึงบริบทของการดำเนินการ Liquid (ตัวแปร ฯลฯ)

หมายเหตุ

ตัวกรองนี้ควรถูกใช้ด้วยความระมัดระวัง และโดยทั่วไปแล้ว ควรจะถูกใช้กับค่าที่อยู่ภายใต้การควบคุมแบบเอกสิทธิ์เฉพาะของผู้เขียนเนื้อหาไซต์ หรือผู้ใช้อื่นที่สามารถเชื่อถือได้ในการเขียนรหัสแบบไม่ตายตัว

รหัส

{{ page.adx_copy | liquid }}

ดูเพิ่มเติม