
Tag <b:switch> merupakan salah satu jenis dari statement conditional yang dapat kita gunakan untuk mengevaluasi dan mencocokkan satu atau beberapa block kode yang ingin digunakan. Tag <b:switch> terdiri dari tag <b:case> dan <b:default/>.
Kita dapat menggunakan tag <b:switch> sama halnya seperti tag <b:if> yang memiliki beberapa tag <b:elseif>. Kelebihan dari tag <b:switch> adalah, kita tidak perlu mengulang nama variabelnya dan kita juga dapat melihat apa saja yang telah ditentukan pada tag tersebut.
Contoh Penulisan tag b:switch, b:case, dan b:default
Berikut adalah contoh penulisan tag b:switch, b:case, dan b:default:
<b:switch var='EKSPRESI'>
<b:case value='EKSPRESI_1'/>
<!-- kode yang ada disini akan dijalankan jika cocok dengan nilai dari EKSPRESI_1 -->
<b:case value='EKSPRESI_2'/>
<!-- kode yang ada disini akan dijalankan jika cocok dengan nilai dari EKSPRESI_2 -->
<b:default/>
<!-- kode yang ada disini akan dijalankan jika semuanya tidak cocok dengan nilai dari EKSPRESI_1 dan EKSPRESI_2 -->
</b:switch>
Coba kalian perhatikan terlebih dahulu kode diatas, apakah kalian sudah bisa membayangkan hasilnya? Jika sudah atau masih belum paham, mari kita lihat beberapa keterangan berikut:
- Tag <b:switch> dapat bersarang (Nested). Artinya, tag tersebut juga dapat memiliki tag lain di dalamnya.
- Tag <b:switch> dan <b:case> harus memiliki atribut. Contohnya seperti <b:switch var='...'> dan <b:case value='...'>.
- Tag <b:switch> dan <b:case> nilainya dapat berupa Boolean (true/false), angka, string, atau ekspresi dari blogger.
- Tag <b:case> dan <b:default> harus berada di dalam tag <b:switch>.
- Tag <b:case> harus ada di dalam tag <b:switch>, sedangkan tag <b:default> tidak selalu dibutuhkan.
- Kita dapat menggunakan tag <b:case> berapapun jumlahnya selama masih berada di dalam tag <b:switch>.
- Kita dapat menggunakan tag <b:default> hanya di dalam tag <b:switch>.
- Tag <b:default> harus berada di bagian paling bawah/akhir sebelum tag </b:switch>.
Contoh Penerapan tag b:switch, b:case, dan b:default
Pada contoh berikut, kalian akan melihat header yang berbeda pada setiap halaman:
<b:switch var='data:blog.pageType'>
<b:case value="static_page" />
<h1>Halaman Statis</h1>
<b:case value="item" />
<h1>Halaman Post</h1>
<b:default />
<h2>Postingan Blog</h2>
</b:switch>
Pada contoh kode diatas, jika halaman yang sedang kita kunjungi adalah halaman statis, maka akan muncul heading 1 dengan teks "Halaman Statis", jika halaman yang sedang kita kunjungi adalah halaman post, maka akan muncul heading 1 dengan teks "Halaman Post", jika kita tidak membuka halaman statis maupun halaman post, maka yang akan muncul adalah heading 2 dengan teks "Postingan Blog".
Jelas bukan? Jika kalian masih bingung, silahkan tuliskan pertanyaan kalian pada kolom komentar di bawah ini. Terimakasih.
untuk bisa mengetahui valuenya gimana contoh kalau kita mau munculin hanya pada sebuah satu halaman statis atau label tertentu
BalasHapusValuenya bisa berdasarkan Conditional/Kondisi. Kalau menggunakan data:blog.pageType pasti akan kelihatan valuenya, entah itu di Homepage, Staticpage, Itempage, dll.
HapusPosting Komentar