بسم الله الرحمن الرحيم

Sekenario Masalah

Saya memiliki collection berupa daftar dotfriends site.data.dotfriends yang memiliki attribute:

FILE_data/dotfriends.yml
1
2
3
4
5
6
7
8
9
10
11
- nama: 'Rizqi Nur Assyaufi'
  github: 'bandithijo'

- nama: 'Sucipto'
  github: 'suciptoid'

- nama: 'Agung Setiawan'
  github: 'agungsetiawan'

# ...
# ...
Daftar dotfriends

- Rizqi Nur Assyaufi (bandithijo)
- Sucipto (suciptoid)
- Agung Setiawan (agungsetiawan)
- ...
- ...

Untuk menampilkan collection di atas, saya menggunakan cara seperti ini.

FILE_pages/daftar_dotfriends.html
1
2
3
4
5
6
<h1>Daftar dotfriends</h1>
<ul>
{% for friend in site.data.dotfriends %}
  <li>{{ friend.nama }} ({{ friend.github }}</li>
{% endfor %}
</ul>

Namun, Saya tidak ingin menampilkan nama saya pada collection dotfriends tersebut.

Pemecahan Masalah

Nah, untuk mengecualikan (exclude) nama saya “Rizqi Nur Assyaufi” di dalam collection site.data.dotfriends.

1. contains

FILE_pages/daftar_dotfriends.html
1
2
3
4
5
6
7
8
<h1>Daftar dotfriends</h1>
<ul>
{% for friend in site.data.dotfriends %}
  {% unless friend.nama contains 'Rizqi Nur Assyaufi' %}
    <li>{{ friend.nama }}</li>
  {% endunless %}
{% endfor %}
</ul>

Baris ke 4, adalah negasi dari kondisi if (unless) untuk nama yang mengandung “Rizqi Nur Assyaufi”. Kondisi inilah yang membuat nama saya tidak ikut ditampilkan.

2. offset

FILE_pages/daftar_dotfriends.html
1
2
3
4
5
6
<h1>Daftar dotfriends</h1>
<ul>
{% for friend in site.data.dotfriends offset: 1 %}
  <li>{{ friend.nama }}</li>
{% endfor %}
</ul>

Baris ke 3, offset: 1, saya meletakkan nama saya pada index pertama di dalam collection. Sehingga saya dapat menggunakan offset untuk mengecualikannya.


Hasilnya akan seperti ini,

Daftar dotfriends

- Sucipto (suciptoid)
- Agung Setiawan (agungsetiawan)
- ...
- ...


Selesai!!!

Saya rasa hanya ini yang dapat saya tuliskan saat ini.

Mudah-mudahan dapat bermanfaat untuk teman-teman.

Terima kasih.

(^_^)

Referensi

  1. How can I exclude a specific Collection in “related-products.liquid”?
    Diakses tanggal: 2020/07/21

  2. shopify.github.io/liquid/tags/iteration/
    Diakses tanggal: 2020/07/21


Penulis

bandithijo

My journey kicks off from reading textbooks as a former Medical Student to digging bugs as a Software Engineer – a delightful rollercoaster of career twists. Embracing failure with the grace of a Cat avoiding water, I've seamlessly transitioned from Stethoscope to Keyboard. Armed with ability for learning and adapting faster than a Heart Beat, I'm on a mission to turn Code into a Product.

- Rizqi Nur Assyaufi

d98d8237fef8f1017d0be931b6e291341cbe6ca8