Mecha versi 2.6.4 sudah dirilis!

Pemutakhiran Sintaks dan Operator XML Blogger 2015

Tabel Konten
  1. And 
    1. Sebelum 
    2. Sesudah 
  2. Or 
    1. Sebelum 
    2. Sesudah 
  3. Not 
    1. Sebelum 
    2. Sesudah 
  4. Ternary Selector 
    1. Sebelum 
    2. Sesudah 
  5. Membership 
    1. Sebelum 
    2. Sesudah 
  6. Else If 
    1. Sebelum 
    2. Sesudah 
  7. Tambahan 
  8. Referensi: 
Blogger Logo

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 &gt; 10'>
    Hasil pencarian dengan jumlah posting lebih dari 10…
  </b:if>
</b:if>

Sesudah 

<b:if cond='data:blog.searchQuery and data:numPosts &gt; 10'>
  Hasil pencarian dengan jumlah posting lebih dari 10…
</b:if>
<b:if cond='data:blog.searchQuery &amp;&amp; data:numPosts &gt; 10'>
  Hasil pencarian dengan jumlah posting lebih dari 10…
</b:if>

Or 

Sebelum 

<b:if cond='data:blog.pageType == &quot;index&quot;'>
  Lolos tes…
</b:if>
<b:if cond='data:blog.pageType == &quot;item&quot;'>
  Lolos tes…
</b:if>

Sesudah 

<b:if cond='data:blog.pageType == &quot;index&quot; or data:blog.pageType == &quot;item&quot;'>
  Lolos tes…
</b:if>
<b:if cond='data:blog.pageType == &quot;index&quot; || data:blog.pageType == &quot;item&quot;'>
  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 == &quot;false&quot;'>
  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 &quot;false&quot;'>
  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 ! &quot;false&quot;'>
  Komentar yang tidak terhapus di sini…
</b:if>

Yang ini bisa:

<b:if cond='not data:comment.isDeleted == &quot;false&quot;'>
  Komentar yang tidak terhapus di sini…
</b:if>
<b:if cond='!data:comment.isDeleted == &quot;false&quot;'>
  Komentar yang tidak terhapus di sini…
</b:if>

Ternary Selector 

Sebelum 

&lt;html class=&#39;<b:if cond='data:blog.pageType == &quot;item&quot;'>
  page-item
<b:else/>
  page-non-item
</b:if>&#39;&gt;
  …
&lt;/html&gt;

Sesudah 

<html expr:class='data.blog.pageType == &quot;item&quot; ? &quot;page-item&quot; : &quot;page-non-item&quot;'>
  …
</html>
<html expr:class='&quot;page-&quot; + (data.blog.pageType == &quot;item&quot; ? &quot;&quot; : &quot;non-&quot;) + &quot;item&quot;'>
  …
</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 == &quot;Taufik Nurrohman&quot;'>
  Admin komentar…
</b:if>
<b:if cond='data:comment.author == &quot;Taufik&quot;'>
  Admin komentar…
</b:if>
<b:if cond='data:comment.author == &quot;Admin&quot;'>
  Admin komentar…
</b:if>

Sesudah 

<b:if cond='data:comment.author in {&quot;Taufik Nurrohman&quot;,&quot;Taufik&quot;,&quot;Admin&quot;}'>
  Admin komentar…
</b:if>
<b:if cond='data:comment.author in [&quot;Taufik Nurrohman&quot;,&quot;Taufik&quot;,&quot;Admin&quot;]'>
  Admin komentar…
</b:if>
<b:if cond='{&quot;Taufik Nurrohman&quot;,&quot;Taufik&quot;,&quot;Admin&quot;} contains data:comment.author'>
  Admin komentar…
</b:if>
<b:if cond='[&quot;Taufik Nurrohman&quot;,&quot;Taufik&quot;,&quot;Admin&quot;] contains data:comment.author'>
  Admin komentar…
</b:if>

Else If 

Sebelum 

<b:if cond='data:blog.pageType == &quot;item&quot;'>
  <data:post.body/>
<b:else/>
  <b:if cond='data:blog.pageType == &quot;static_page&quot;'>
    <data:post.body/>
  <b:else/>
    <data:post.snippet/>
  </b:if>
</b:if>

Sesudah 

<b:if cond='data:blog.pageType == &quot;item&quot;'>
  <data:post.body/>
<b:elseif cond='data:blog.pageType == &quot;static_page&quot;'>
  <data:post.body/>
<b:else/>
  <data:post.snippet/>
</b:if>

atau…

<b:if cond='data:blog.pageType in {&quot;item&quot;,&quot;static_page&quot;}'>
  <data:post.body/>
<b:else/>
  <data:post.snippet/>
</b:if>

Tambahan 

b:switch, b:case, b:eval, b:withreferensi


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

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…

<b:if cond='data:post.link'>
<span class='badge'>Tautan</span>
</b:if>

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

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)

budkalon

Tabel Konten
  1. Operator lambda 

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 == &quot;item&quot;'>
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">&lt;b:if cond='data:blog.pageType == &amp;quot;item&amp;quot;'&gt;
Tampilan posting di halaman Depan
&lt;/b:if&gt;
<b:if cond='data:blog.pageType in {&quot;searchQuery&quot;,&quot;searchLabel&quot;}'>
Tampilan posting di halaman search dan label
&lt;/b:if&gt;
</i>

Moon pencerahannya kak ?

Komentar telah ditutup.