Panduan Lengkap Mengolah Label di Blogger XML
Saat membuat template Blogger, label tidak hanya berfungsi sebagai kategori postingan. Label juga dapat dimanfaatkan sebagai Genre, Studio, Season, Tipe Anime, Status, Tahun Rilis, dan informasi lainnya.
Pada tutorial ini kita akan mempelajari cara menggunakan
data:post.labels, <b:loop>,
<b:if>, contains, dan
in.
1. Menampilkan Semua Label
Gunakan data:post.labels untuk mengambil semua label.
<b:loop values='data:post.labels' var='label'>
<a expr:href='data:label.url'>
<data:label.name/>
</a>
</b:loop>
2. Menampilkan Label Tertentu
Contoh hanya menampilkan label Movie dan TV.
<b:loop values='data:post.labels' var='label'>
<b:if cond='data:label.name == "Movie" or data:label.name == "TV"'>
<span><data:label.name/></span>
</b:if>
</b:loop>
3. Menggunakan Operator in
Operator in digunakan untuk mengecek apakah suatu nilai
terdapat di dalam sebuah daftar.
<b:if cond='data:label.name in data:TypeAnime'>
<data:label.name/>
</b:if>
4. Menggunakan contains
Operator contains digunakan untuk mencari sebagian teks.
<b:with value='"String: " + data:label.name' var='string'>
<b:if cond='data:string contains "MAPPA"'>
Studio ditemukan.
</b:if>
</b:with>
5. Mencari Studio dari Daftar
<b:loop values='data:post.labels' var='label'>
<b:with value='"String: " + data:label.name' var='string'>
<b:loop values='data:otherStudio' var='studio'>
<b:if cond='data:string contains data:studio'>
<a expr:href='data:label.url'>
<data:label.name/>
</a>
</b:if>
</b:loop>
</b:with>
</b:loop>
6. Menggabungkan in dan contains
<b:loop values='data:post.labels' var='label'>
<b:if cond='data:label.name in data:Studio1 or
data:label.name in data:Studio2 or
data:label.name in data:Studio3'>
<a expr:href='data:label.url'>
<data:label.name/>
</a>
<b:else/>
<b:with value='"String: " + data:label.name' var='string'>
<b:loop values='data:otherStudio' var='studio'>
<b:if cond='data:string contains data:studio'>
<a expr:href='data:label.url'>
<data:label.name/>
</a>
</b:if>
</b:loop>
</b:with>
</b:if>
</b:loop>
Perbedaan Operator
| Operator | Fungsi |
|---|---|
== |
Membandingkan dua nilai yang sama persis. |
in |
Mengecek apakah suatu nilai ada di dalam daftar. |
contains |
Mengecek apakah sebuah teks mengandung teks lain. |
Kesimpulan
Dengan memanfaatkan data:post.labels,
<b:loop>, <b:if>,
contains, dan in, Anda dapat membuat
berbagai fitur pada template Blogger seperti Genre, Studio, Season,
Status, hingga Tipe Anime tanpa memerlukan JavaScript tambahan.
Daftar Variabel Studio untuk Blogger XML
Agar proses filter studio lebih mudah, kita dapat membagi daftar studio ke dalam beberapa variabel, misalnya
Studio1, Studio2, Studio3, serta
otherStudio.
Pembagian ini juga membantu menghindari penulisan daftar yang terlalu panjang dalam satu variabel sehingga template lebih mudah dibaca dan dikelola.
Studio1
Berisi daftar studio anime populer.
<b:with value='[
"A-1 Pictures",
"8bit",
"A.C.G.T",
"Actas",
"Bibury Animation Studios",
"Bones",
"Brain's Base",
"C2C",
"CloverWorks",
"David Production",
"Doga Kobo",
"EMT Squared",
"ENGI",
"Feel",
"GoHands"
]' var='Studio1'>
Studio2
Tambahkan studio lainnya pada variabel kedua.
<b:with value='[
"J.C.Staff",
"Kinema Citrus",
"Kyoto Animation",
"Lerche",
"LIDENFILMS",
"Madhouse",
"MAPPA",
"Nexus",
"OLM",
"P.A.Works",
"Passione",
"Pierrot",
"Production I.G"
]' var='Studio2'>
Studio3
Daftar studio tambahan.
<b:with value='[
"Satelight",
"Shaft",
"Shin-Ei Animation",
"Silver Link",
"Studio Bind",
"Studio Deen",
"Studio Ghibli",
"Studio Kai",
"Sunrise",
"SynergySP",
"TMS Entertainment",
"Toei Animation",
"Troyca",
"Ufotable",
"Wit Studio"
]' var='Studio3'>
otherStudio
Variabel ini digunakan sebagai fallback untuk mendeteksi studio yang belum ada pada daftar Studio1, Studio2, maupun Studio3.
<b:with value='[
"Studio",
"Animation",
"Animations",
"Pictures",
"Production",
"Productions",
"Entertainment",
"Works",
"Project",
"Factory",
"Film",
"Films",
"Visual",
"Art",
"Lab"
]' var='otherStudio'>
Cara Menggunakannya
Setelah variabel di atas dibuat, Anda dapat menggunakannya untuk melakukan pengecekan apakah label postingan termasuk daftar studio utama atau hanya mengandung kata kunci tertentu.
<b:loop values='data:post.labels' var='label'>
<b:if cond='data:label.name in data:Studio1
or data:label.name in data:Studio2
or data:label.name in data:Studio3'>
<a expr:href='data:label.url' rel='tag'>
<data:label.name/>
</a>
<b:else/>
<b:with value='"String: " + data:label.name' var='string'>
<b:loop values='data:otherStudio' var='studio'>
<b:if cond='data:string contains data:studio'>
<a expr:href='data:label.url' rel='studio'>
<data:label.name/>
</a>
</b:if>
</b:loop>
</b:with>
</b:if>
</b:loop>
Hasil:
- Jika label adalah
MAPPA,Bones, atauKyoto Animation, maka akan langsung dikenali melaluiStudio1,Studio2, atauStudio3. - Jika label adalah
Orange Studio,Felix Film, atauYokohama Animation Lab, maka akan dikenali melaluiotherStudiokarena mengandung kata seperti Studio, Animation, Film, atau Lab.
Studio1, Studio2, atau Studio3 kapan saja. Jika belum sempat menambahkannya, otherStudio tetap dapat membantu mendeteksi sebagian besar nama studio secara otomatis.

Komentar