Pemutakhiran Sintaks dan Operator XML Blogger 2015
Tabel Konten
Baru-baru ini Blogger telah merilis beberapa operator baru untuk sintaks XML mereka. Sintaks baru ini memungkinkan kita untuk dapat menulis kode templat yang lebih baik, lebih logis dan lebih efisien. Selain dapat mengurangi ukuran berkas XML, sintaks baru ini juga memungkinkan para pengembang untuk dapat menemukan potensi-potensi baru dalam memanipulasi kode templat Blogger yang dulu sebagian besar hanya bisa kita lakukan dengan JavaScript. Berikut ini adalah ringkasannya…
And
Sebelum
<b:if cond='data:blog.searchQuery'>
<b:if cond='data:numPosts > 10'>
Hasil pencarian dengan jumlah posting lebih dari 10…
</b:if>
</b:if>
Sesudah
<b:if cond='data:blog.searchQuery and data:numPosts > 10'>
Hasil pencarian dengan jumlah posting lebih dari 10…
</b:if>
<b:if cond='data:blog.searchQuery && data:numPosts > 10'>
Hasil pencarian dengan jumlah posting lebih dari 10…
</b:if>
Or
Sebelum
<b:if cond='data:blog.pageType == "index"'>
Lolos tes…
</b:if>
<b:if cond='data:blog.pageType == "item"'>
Lolos tes…
</b:if>
Sesudah
<b:if cond='data:blog.pageType == "index" or data:blog.pageType == "item"'>
Lolos tes…
</b:if>
<b:if cond='data:blog.pageType == "index" || data:blog.pageType == "item"'>
Lolos tes…
</b:if>
Not
Sebelum
<b:if cond='data:comment.isDeleted'>
<b:else/>
Komentar yang tidak terhapus di sini…
</b:if>
<b:if cond='data:comment.isDeleted == "false"'>
Komentar yang tidak terhapus di sini…
</b:if>
Sesudah
<b:if cond='!data:comment.isDeleted'>
Komentar yang tidak terhapus di sini…
</b:if>
<b:if cond='not data:comment.isDeleted'>
Komentar yang tidak terhapus di sini…
</b:if>
Yang ini tidak bisa:
<!-- TEMPLATE ERROR: 'not' term cannot be used as operator except when preceding 'in' or 'contains' -->
<b:if cond='data:comment.isDeleted not "false"'>
Komentar yang tidak terhapus di sini…
</b:if>
<!-- TEMPLATE ERROR: Extra characters at end of string: buf=[!] remainder=["false"] -->
<b:if cond='data:comment.isDeleted ! "false"'>
Komentar yang tidak terhapus di sini…
</b:if>
Yang ini bisa:
<b:if cond='not data:comment.isDeleted == "false"'>
Komentar yang tidak terhapus di sini…
</b:if>
<b:if cond='!data:comment.isDeleted == "false"'>
Komentar yang tidak terhapus di sini…
</b:if>
Ternary Selector
Sebelum
<html class='<b:if cond='data:blog.pageType == "item"'>
page-item
<b:else/>
page-non-item
</b:if>'>
…
</html>
Sesudah
<html expr:class='data.blog.pageType == "item" ? "page-item" : "page-non-item"'>
…
</html>
<html expr:class='"page-" + (data.blog.pageType == "item" ? "" : "non-") + "item"'>
…
</html>
Membership
Hampir sama dengan operator or
, hanya saja semua referensi pembanding harus sama, nilainya saja yang dibedakan:
Sebelum
<b:if cond='data:comment.author == "Taufik Nurrohman"'>
Admin komentar…
</b:if>
<b:if cond='data:comment.author == "Taufik"'>
Admin komentar…
</b:if>
<b:if cond='data:comment.author == "Admin"'>
Admin komentar…
</b:if>
Sesudah
<b:if cond='data:comment.author in {"Taufik Nurrohman","Taufik","Admin"}'>
Admin komentar…
</b:if>
<b:if cond='data:comment.author in ["Taufik Nurrohman","Taufik","Admin"]'>
Admin komentar…
</b:if>
<b:if cond='{"Taufik Nurrohman","Taufik","Admin"} contains data:comment.author'>
Admin komentar…
</b:if>
<b:if cond='["Taufik Nurrohman","Taufik","Admin"] contains data:comment.author'>
Admin komentar…
</b:if>
Else If
Sebelum
<b:if cond='data:blog.pageType == "item"'>
<data:post.body/>
<b:else/>
<b:if cond='data:blog.pageType == "static_page"'>
<data:post.body/>
<b:else/>
<data:post.snippet/>
</b:if>
</b:if>
Sesudah
<b:if cond='data:blog.pageType == "item"'>
<data:post.body/>
<b:elseif cond='data:blog.pageType == "static_page"'>
<data:post.body/>
<b:else/>
<data:post.snippet/>
</b:if>
atau…
<b:if cond='data:blog.pageType in {"item","static_page"}'>
<data:post.body/>
<b:else/>
<data:post.snippet/>
</b:if>
Tambahan
b:switch
, b:case
, b:eval
, b:with
— referensi
33 Komentar
Rizal Nurhidayat
Blogger tambah mutakhir, ane jadi tambah gk ngerti bang... yang jadul aja blom khatam... :D
Unknown
ganteng sekali postingan ini :D
Beben Koben
Kirain sudah otomatis digantiin langsung ma fihak blogger!
Harus manual sama kita bos? Penjelasan lebih rinci ah \o/
Taufik Nurrohman
Kalau untuk templat yang masih tidak tersentuh, yang versi bawaan dari Blogger, sudah ada kok beberapa perubahan sedikit di dalam. Paling gampang cek di tag meta viewport.
tai
Sebagian besar kode - kode penting berubah 7:(
Alul Stemaku
mantap jadi bisa lebih singkat nih. tapi rada bingung juga kalau digabung kayak gini.. :D
Stellarix
Masih bingung, tapi postingannya bagus nih buat saya yang newbie :) :D
Randi Bouty
waduh makin kesini makin bingung bang biar di baca ulng ulng soalnya belum pernah liat kodenya :D
C
Menarik om :D
Unknown
Saya masih bingung nih.
Tapi keren lah...
Bloggedewek
zahrotul wahyudi
waduh ketinggalan niy.. lama gak kunjungin blog DTE :D
nuwun alias thankyou...
Beben Koben
Ada yg baru lagi dari buzz ttg tema ini???
Damar Zaky
mantap mas, baru tau udah lama tidak mengikuti dunia koding wehehehe
Rully Ardiansyah
lebih efektif nih sekarang ... oh iya kang mau tanya soalnya udah nanya mbah gugel gk ada jawabannya, misal ada suatu link di dalem post <a href="#link" class="demo">demo</a> kemudian saya mau ambil href nya aja dari link tsb untuk ditampilkan di posting bagian homepage,, kira-kira kodenya kaya gimana ya ?? mohon bantuannya
Taufik Nurrohman
Diaktifkan saja fitur tautan judul, bawaan dari Blogger mas…
budkalon
Saya mau nyambungin, nih, Gan. Kan kalau di blog DTE ini, setiap pos yang punya tautan judul tuh suka ada ikon khususnya, nah, bagaimana cara mendeteksinya? Supaya kalau pos yang memiliki tautan judul dapat memiliki kelas khusus di halaman home. Apakah ada tag blogger khusus atau harus pake JS?
Taufik Nurrohman
Begini mas…
IRIL SAGITA
Mantab nih, lagi nyari2 di bahas disini, tank's ?
Anonim
Info yang sangat bermanfaat, terutama saya sangat senang dengan ternary selector, jadi tidak perlu manipulasi dengan decode elemen HTML untuk membuat atribut kondisional pada laman tertentu..
Taufik Nurrohman
Menurut Saya yang paling efisien itu ada di membership, jadi bisa lebih irit baris kode.
budkalon
Kang, kalau artikel mengenai tag kondisional blogger seperti <b:if/>, <b:ifelse/>, dan <b:else/> kan sudah banyak, nah, saya boleh, gak, request artikel mengenai tag-tag blogger lainnya seperti <b:switch/>, <b:eval/>, dan <b:with/>? :D
Saya nyari referensi dan tutorial di web lain, tapi yang ada bukan untuk tag blogger.
Taufik Nurrohman
Tidak ketemu di mana-mana karena sintaks Blogger yang seperti itu memang tidak ada. Kalau di sini ada.
budkalon
Udah ketemu, Kang. Walaupun gak terlalu komplit :) https://support.google.com/blogger/answer/46995
Taufik Nurrohman
Sippp mas!!!
Damar Zaky
buat komentar admin kayaknya lebih enak pake ini deh mas <b:if cond='data:comment.authorClass'>
Taufik Nurrohman
Sepertinya iya mas. Jadi tidak tergantung pada karakter/teks pada nama pengarang. Posting dengan nama penulis yang berbeda jadi bisa menyesuaikan diri.
Anonim
Ganteng banget B)
Rully Ardiansyah
mau tanya lagi mas, kalau untuk costum url gimana yah?
Misal: hanya ingin menampilkan
ABC
hanya pada halamanDomain.TLD/p/halaman.html
Taufik Nurrohman
→ /2011/08/tag-kondisional-tingkat-lanjut.html
budkalon
Tabel Konten
Kang, ada yang baru dari blogger, nih. Lumayan buat perbendaharaan :)
Operator lambda
Lambda expressions are useful when you want to check if a condition is true for one, all, or none of the items in a set. You can also use it to filter a set of items, or map a set of items to a new set.
Tautan: [url=https://productforums.google.com/forum/#!topic/blogger/l3phi8bscGY;context-place=forum/blogger]Blogger Help Forum,
Lambda expression[/url]
Taufik Nurrohman
Menarik mas. Ini lagi → https://productforums.google.com/forum/#!topic/blogger/4R_sAkgZH9I;context-place=topicsearchin/blogger/resize|sort:date (mengubah ukuran gambar tanpa JavaScript).
Widia Gustiawati
Mas saya pernah lihat ada Orang yang jual template Blogger di temforest, terus dia nawarin fitur Advance setting (layout, color dll,) tapi bukan bawaan blogger, apa itu mungkin menambahkan sebuah panel setting baru di dasboard blogger?
Ada referensinya gak mas?
ini template yang saya maksud
http://themeforest.net/item/surface-responsive-magazine-blogger-theme/15877093?s_rank=2
IRIL SAGITA
Sebelumnya, Minal aidzin walfaidzin mohon maaf lahir dan batin ya kak ?
Ini saya mau tanya, jika yg ini :
<b:if cond='data:blog.pageType == "item"'>
Tampilan posting di halaman Depan
</b:if>
<b:if cond='data:blog.searchQuery'>
Tampilan posting di halaman search
</b:if>
<b:if cond='data:blog.searchLabel'>
Tampilan posting di halaman Label
</b:if>
Apakah bisa jika gini :
<i rel="pre"><b:if cond='data:blog.pageType == &quot;item&quot;'>
Tampilan posting di halaman Depan
</b:if>
<b:if cond='data:blog.pageType in {"searchQuery","searchLabel"}'>
Tampilan posting di halaman search dan label
</b:if>
</i>
Moon pencerahannya kak ?