January 12, 2018

Tag Widget untuk Tata Letak

Bila menggunakan tema Tata Letak untuk membuat bagian badan blog, Anda dapat menggunakan widget untuk menambahkan elemen halaman seperti gambar dan blogroll.
Jenis tag
Bagian ini menjelaskan HTML yang dapat Anda gunakan dalam tag penutup.
Include (b:include)
Kapan include digunakan
Include paling berguna jika Anda memiliki bagian dari kode yang ingin digunakan kembali di beberapa tempat yang berbeda, atau hanya disertakan dalam keadaan tertentu.
Untuk melakukannya, tulis konten dalam b:includable, lalu gunakan b:include di tempat Anda ingin menampilkannya.
Format

  [sisipkan konten yang Anda inginkan di sini]


Atribut
·         id (wajib): Pengenal unik yang terdiri dari huruf dan angka. Setiap widget harus memiliki satu includable dengan id='main'.
·         var (opsional): Pengenal yang terdiri dari huruf dan angka, untuk referensi data dalam bagian ini.
Jika Anda membuat lebih banyak includable dengan ID berbeda, includable tidak akan ditampilkan secara otomatis. Namun, jika membuat includable dengan id='new', Anda dapat mereferensikannya dalam includable utama dengan dan akan ditampilkan seperti itu.
Atribut-atribut untuk tag b:include adalah sebagai berikut:
·         name (wajib): Pengenal yang terdiri dari huruf dan angka. Ini harus sesuai dengan ID b:includable yang ada dalam widget yang sama.
·         data (opsional): Ekspresi atau potongan data untuk diteruskan ke bagian includable. Ini akan menjadi nilai atribut var di includable.
·         cond (opsional): Ekspresi yang menyebabkan include hanya dijalankan ketika hasilnya benar. Ini sama dengan atribut cond pada b:if.
Contoh
Berikut ini adalah contoh yang memperlihatkan cara menggunakan b:includable dan b:include.
Hal utama yang harus dipahami di sini adalah cara bagian "main" menyertakan bagian "post" di dalamnya. Sebuah pos yang disebut "p" dan bagian disertakan yang direferensikan sebagai var "post"-nya akan diteruskan, kemudian judulnya akan dicetak.
Perhatikan bahwa include hanya berjalan jika indeksnya kurang dari 10, sehingga hanya maksimal 10 pos yang akan dirender dalam contoh ini (indeks dimulai dari 0).

 
   
 


  Judul:



Contoh
·         akan mencetak judul widget
·         - Ukuran: x  akan mencetak atribut komponen foto. Foto mungkin memiliki komponen seperti URL, tinggi, dan lebar. Menggunakan notasi "." menunjukkan bahwa kita menginginkan URL untuk foto ini, dan bukan URL dari hal lainnya.
Lihat contoh lainnya
Lihat daftar lengkap tag data tataletak yang didukung.

Loop (b:loop)

Kapan b:loop digunakan
Tag b:loop memungkinkan Anda mengulangi sebuah bagian konten beberapa kali. Hal ini paling sering digunakan untuk mencetak setiap pos dalam daftar pos bagi laman tertentu, atau setiap komentar, atau setiap label, dll.
Format
Format umum penggunaan loop adalah:

  [konten yang diulang ditempatkan di sini]


Bagian 'identifier' (i) dapat berupa nama apa pun yang Anda pilih, dan akan digunakan untuk menggantikan setiap item baru dalam daftar, setiap kali melalui lingkaran (loop). Kumpulan data yang Anda tentukan untuk nilai dapat merupakan potongan data mana pun seperti yang dijelaskan dalam artikeltag data sebagai daftar item.
Misalnya, dalam widget pos blog, posts adalah sebuah daftar. Kode seperti di bawah ini akan melingkar (loop) melalui setiap pos, mencetak judul untuk setiap pos, dengan tag header di sekitarnya.

 



Perhatikan bagaimana "i" mengambil nilai setiap pos bergiliran, sehingga Anda bisa mendapatkan judul dari setiap pos.
Rentang Angka
Tag loop memungkinkan Anda mengulang seluruh rentang angka inklusif, seperti '1 sampai 3', '-3 sampai -9', dengan nilai variabel mengambil nilai angka. Contoh berikut akan membuat daftar 1, 2, dan 3 yang tidak berurutan.

 

  •  
    Atribut Indeks
    Tag loop juga memiliki atribut indeks opsional, yang memberikan indeks berbasis nol dari pengulangan saat ini melalui loop.


     
       
  • Indeks: , Angka:
  •  



    Contoh ini akan membuat daftar tidak berurutan dari:
    ·         Indeks: 0, Angka: 9
    ·         Indeks: 1, Angka: 8
    ·         Indeks: 2, Angka: 7

    If, elseif, & else (b:if)

    Kapan if, elseif, atau else digunakan
    Anda dapat menggunakan tag b:if, b:elseif, dan b:else untuk menampilkan konten tertentu dalam kasus tertentu, dan konten lainnya dalam kasus lain. Misalnya, Anda mungkin hanya ingin menampilkan teks tertentu pada beranda dan teks lain ketika melihat setiap pos.
    Format

      [konten untuk ditampilkan jika kondisi benar]
      [konten untuk ditampilkan jika tidak ada kondisi if atau elseif sebelumnya yang benar, dan kondisi elseif ini benar]
      [konten untuk ditampilkan jika tidak ada kondisi if atau elseif yang terpenuhi]


    Tag b:elseif dan b:else adalah opsional. Tanpa tag tersebut, hasilnya bisa berupa konten yang tercantum dalam bagian b:if atau tidak ada sama sekali. Namun, penutup
    diperlukan dalam setiap kasus.
    Untuk "condition", Anda dapat memasukkan apa pun yang mengevaluasi benar atau salah. Beberapa tag data hanya sekadar nilai benar/salah itu sendiri, misalnya allowComments di pos. Dengan potongan data lain, Anda dapat membandingkannya dengan nilai-nilai tertentu untuk mendapatkan benar atau salah. Berikut ini beberapa contohnya:
    ·        
    Benar jika pos saat ini disetel untuk menampilkan link balik.
    ·        
    Benar jika halaman saat ini adalah halaman item (laman pos).
    ·        
    Benar jika halaman saat ini adalah halaman item (halaman pos) dan pos saat ini disetel untuk menampilkan link balik.
    ·        
    Benar jika ini bukan nama tampilan Fred.
    ·        
    Benar jika Fred adalah nama tampilan, atau halaman saat ini adalah halaman statis (bukan halaman pos).
    ·        
    Benar jika pos saat ini memiliki lebih dari satu komentar.
    ·         ATAU 
    Benar jika halaman saat ini adalah pos tertentu, atau sebuah halaman.
    Switch (b:switch)
    Kapan Switch digunakan
    Anda dapat menggunakan tag b:switch dengan cara yang sangat mirip seperti saat menggunakan tag b:if yang memiliki beberapa tag b:elseif. Keuntungan dari cabang switch adalah bahwa Anda tidak perlu mengulang nama variabel. Anda dapat dengan mudah membacanya untuk melihat apa yang menentukan setiap kasus, dan apa kasus default-nya.
    Format


     [Keluaran jika evaluasi var sama dengan Nilai 1]

     [Keluaran jika evaluasi var sama dengan Nilai 2]
    [... nilai lainnya]

     [Keluaran jika evaluasi var tidak sama dengan b:case lainnya yang dinyatakan]
    Contoh
    Contoh ini menunjukkan cara mendapatkan keluaran header yang berbeda, tergantung pada jenis laman yang sedang dirender.


      

    Laman



      

    Pos



      

    Pos Blog



    Atribut expressions (expr:)

    Kapan Expression digunakan
    Anda dapat menggunakan atribut expr untuk menyetel nilai atribut berdasarkan nilai-nilai dalam kamus data. 
    Contoh
    ·         Beranda
    Link beranda dengan URL beranda blog.
    ·         RSS Pos
    Link dengan URL umpan RSS pos blog. Operator ‘+' merangkai dua string.
    ·        
    Contoh
    ·         ketinggian minimal: px;
    Output berupa ketinggian relatif yang dihitung berdasarkan nilai lebar yang baru.
    ·        
    Output berupa URL label pos pertama.
    ·        
    Contoh
    Untuk atribut gaya yang rumit berdasarkan variabel data, Anda dapat menghitungnya sebelum sisa keluaran HTML, sehingga HTML bertingkat lebih mudah dibaca.
    var='style
    '
           value='"background-image: url(\"" + data:sourceUrl "\"); "
               + " width: " + data:width + "px; " '>


      
    expr:style='data:style'
    >
        

    Header saya


     



    Perhatikan bahwa variabel hanya akan ada untuk nodus anak dari tag
    b:with.
    Lihat contoh
    Klik untuk melihat contoh bagaimana semua tag ini digunakan dalam HTML untuk widget PageList di blog Anda.

    Contoh

    Dalam widget ini, Anda dapat melihat contoh penggunaan dari tag b:widget, b:includable (dan b:include), b:if (dan b:else), dan b:loop.

     
       
         


       

       
         
           
           
             
               
             
                 
             

           

           

            ▼
         
           
           
             
               
  •               expr:href='data:link.href'>
               

             
               
  •               expr:href='data:link.href'>
               

             

           

           

         

         
       

     



    No comments: