Masuk
Showing posts with label Widget. Show all posts
Showing posts with label Widget. Show all posts

Saturday, November 24, 2012

Penyusunan Dasar Template Blogger.com

Posting ini akan menuturkan tentang beberapa bagian dalam struktur pengkodean dasar template Blogger™, dimana obyek template adalah template Blogger™ yang diakses melalui “Edit HTML”, sehingga opsi Customize dapat diabaikan. Mungkin diterjemahkan dalam bahasa sederhana artinya apabila ingin merubah sesuatu berkenaan struktur pengkodean, maka dilakukan secara manual. Bentuk sederhana HTML pada sebuah situs web atau blog adalah sebagai berikut.

<html>
<head>
<title>Format Sederhana HTML</title>
</head>
<body>
</body>
</html>

Ketika kode di atas diaplikasikan pada peramban, maka akan terlihat layar kosong & tab peramban akan menampilkan title. Lebih lanjut, tambahkan baris teks dalam body, contoh: Aku adalah tubuh HTML. Layar peramban akan menambahkan sebuah baris teks sesuai dengan apa yang kita tulis di antara <body></body>.

Deklarasi xml (eXtensible Markup Language)

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'>

Ketika kita ingin memasukkan daerah geografi atau bahasa yang didukung oleh konten dalam tubuh HTML — tidak perlu menambahkan meta — cukup sisipkan tag lang, contoh: lang='id', lang='en', lang='en-us', lang='fr', dan sebagainya.

<html lang='id' xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'>

Elemen Head

Head HTML berisi sejumlah markah yang meliputi script, instruksi kepada peramban untuk menemukan stylesheets, memberikan informasi meta, dan lain-lain.

<head>
<meta content='IE=EmulateIE7' http-equiv='X-UA-Compatible'/>
<b:if cond='data:blog.isMobile'>
<meta content='width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0' name='viewport'/>
<b:else/>
<meta content='width=1100' name='viewport'/>
</b:if>
<b:include data='blog' name='all-head-content'/>
<title>
<b:if cond='data:blog.homepageUrl == data:blog.url'>
<data:blog.title/>
<b:else/>
<data:blog.pageName/> | <data:blog.title/>
</b:if>
</title>
<meta content='' name=''/>
<link href='' rel='' type=''/>
<script src='' type=''/>
<b:skin><![CDATA[ /* CSS Anda di sini */
body {
background: #fff;
color: #000;
font: .875em/1.7143em Georgia, Times, "Times New Roman", serif;
text-align: left;
word-spacing: .075em;
}
… dan seterusnya …
]]></b:skin>
</head>

Elemen Body

Body HTML merupakan tubuh dari HTML (HyperText Markup Language) yang akan menampilkan bentuk pengkodean pada layar peramban. Sedangkan beberapa elemen yang melingkupinya dapat kita uraikan sebagai berikut.

<body expr:class='"loading" + data:blog.mobileClass'>

Navbar

  <b:section class='navbar' id='navbar' maxwidgets='1' showaddelement='no'>
<b:widget id='Navbar1' locked='true' title='Navbar' type='Navbar'/>
</b:section>

Header

  <b:section class='header' id='header' maxwidgets='1' showaddelement='no'>
<b:widget id='Header1' locked='true' title='Title Blog (Header)' type='Header'/>
</b:section>

Main (Posting Blog)

  <b:section class='main' id='main' showaddelement='no'>
<b:widget id='Blog1' locked='false' title='Blog Posts' type='Blog'/>
</b:section>

Sidebar

<b:section class='sidebar' id='sidebar' preferred='yes'/>

Footer

  <b:section class='footer' id='footer' showaddelement='no'>
<b:widget id='Attribution1' locked='false' title='' type='Attribution'/>
</b:section>

Dari beberapa markah elemen di atas, biasanya untuk menampilkan halaman posting atau halaman statis pada blog, minimal harus ada elemen widget main (posting blog). Sedangkan yang lain dapat dikustomisasi manual, seperti header dapat saja berisi title serta tagline, fungsi fitur navbar dapat kita matikan, dan lain-lain.

Simpulan


Dengan beberapa ringkasan sederhana di atas, mungkin kita telah dapat menggambarkan bagaimana sebuah blog pada Blogger™ dibentuk. Tinggal menambahkan beberapa selector (id dan/atau class) atau elemen-elemen dalam HTML5 (header, article, aside, footer, dan sebagainya) untuk mengapit elemen widget tersebut serta konfigurasi CSS (Cascading Style Sheets) yang dibutuhkan. Sedangkan isi konten kita upayakan agar tetap memberikan tanda, sehingga lebih bermakna bagi pembacanya.

READ MORE - Penyusunan Dasar Template Blogger.com

Thursday, November 22, 2012

Navigasi Breadcrumbs dengan Microdata

Anda mungkin pernah membaca posting Menambah Lokasi Link Post (Breadcrumbs Trail) oleh Hoctro. Posting ini juga berhubungan dengan hal tersebut, namun di-aransemen dengan beberapa hack agar muncul di beberapa halaman & ditambahkan format microdata data-vocabulary. Penggunaan data-vocabulary dimaksudkan agar breadcrumbs mampu berdiri sendiri, sehingga akan harmonis dengan format microdata http://schema.org/Blog. Lebih lanjut mengenai breadcrumbs yang didukung beberapa format dapat kita telaah pada Rich snippets — Breadcrumbs.

<b:includable id='breadcrumb' var='posts'>
<b:if cond='data:blog.homepageUrl != data:blog.url'>
<b:if cond='data:blog.pageType == "static_page"'>
<!-- breadcrumb for the static page -->
<div class='breadcrumbs' itemscope='itemscope' itemtype='http://data-vocabulary.org/Breadcrumb'><a expr:href='data:blog.homepageUrl' itemprop='url'><span itemprop='title'>Beranda</span></a> / <span itemprop='title'><data:blog.pageName/></span></div>
<b:else/>
<b:if cond='data:blog.pageType == "item"'>
<!-- breadcrumb for the post page -->
<b:loop values='data:posts' var='post'>
<b:if cond='data:post.labels'>
<div class='breadcrumbs' itemscope='itemscope' itemtype='http://data-vocabulary.org/Breadcrumb'><a expr:href='data:blog.homepageUrl' itemprop='url'><span itemprop='title'>Beranda</span></a>
<b:loop values='data:post.labels' var='label'>
<b:if cond='data:label.isLast == "true"'>
/ <a expr:href='data:label.url' itemprop='url'><span itemprop='title'><data:label.name/></span></a>
</b:if>
</b:loop>
/ <span itemprop='title'><data:post.title/></span></div>
<b:else/>
<div class='breadcrumbs' itemscope='itemscope' itemtype='http://data-vocabulary.org/Breadcrumb'><a expr:href='data:blog.homepageUrl' itemprop='url'><span itemprop='title'>Beranda</span></a> / <span itemprop='title'>Tanpa Label</span> / <span itemprop='title'><data:post.title/></span></div>
</b:if>
</b:loop>
<b:else/>
<b:if cond='data:blog.pageType == "archive"'>
<!-- breadcrumb for the label archive page -->
<div class='breadcrumbs' itemscope='itemscope' itemtype='http://data-vocabulary.org/breadcrumb'><a expr:href='data:blog.homepageUrl' itemprop='url'><span itemprop='title'>Beranda</span></a> / <span itemprop='title'>Arsip <data:blog.pageName/></span></div>
<b:else/>
<b:if cond='data:blog.pageType == "index"'>
<!-- breadcrumb for non home page (2nd, search, label page) -->
<b:if cond='data:blog.pageName == ""'>
<div class='breadcrumbs' itemscope='itemscope' itemtype='http://data-vocabulary.org/Breadcrumb'><a expr:href='data:blog.homepageUrl' itemprop='url'><span itemprop='title'>Beranda</span></a> / <span itemprop='title'>Penelusuran Arsip Posting</span></div>
<b:else/>
<div class='breadcrumbs' itemscope='itemscope' itemtype='http://data-vocabulary.org/Breadcrumb'><a expr:href='data:blog.homepageUrl' itemprop='url'><span itemprop='title'>Beranda</span></a> / <span itemprop='title'><data:blog.pageName/></span></div>
</b:if>
</b:if>
</b:if>
</b:if>
</b:if>
</b:if>
</b:includable>

Untuk pengkodean berwarna merah, dapat diganti sesuai keinginan Anda dengan menyesuaikan pula di halaman apa ia ditampilkan. Sedangkan warna biru (“/”) merupakan pemisah (separator) antar title. Letakkan pengkodean pada “Edit HTML”, jangan lupa centang Expand Widget Templates. Kemudian cari kode berikut & taruh di atasnya.

<b:includable id='main' var='top'>

Kita telah menambahkan widget breadcrumbs (kalau boleh dikatakan demikian), tinggal cara memanggil serta meletakkan kode pemanggilan tersebut. Perlu diperhatikan, kemungkinan pengkodean tiap template dapat berbeda-beda. Cara memanggilnya adalah melalui markah berikut.

<b:include data='posts' name='breadcrumb'/>

Letakkan kode pemanggilan itu di atas <b:include data='top' name='status-message'/>, seperti yang dapat kita amati di bawah ini.

<!-- posts -->
<div class='blog-posts hfeed'>

<b:include data='posts' name='breadcrumb'/>
<b:include data='top' name='status-message'/>

Sedangkan untuk melakukan beberapa kustomisasi, tambahkan selector .breadcrumbs pada CSS template atau letakkan saja di atas ]]></b:skin>. Contoh:

.breadcrumbs {
font: .875em/1.7143em monospace;
margin: 0 0 1.7143em;
}

Penambahan breadcrumbs di atas, khusus dilakukan pada Blogger™ & pengkodeannya tidak mutlak demikian. Artinya kita masih dapat merubah atau melakukan modifikasi sesuai dengan pengkodean template yang digunakan.

Bahan Bacaan: Breadcrumb for Blogger format RDF (Resource Description Framework) — Blogger Plugins.

READ MORE - Navigasi Breadcrumbs dengan Microdata

Wednesday, November 14, 2012

Widget Posting dan Komentar Terbaru yang Sederhana

Mungkin Anda pernah membaca artikel sebelumnya tentang Trik Blogger | Memasang Posting Terbaru (Recent Posts) & Trik Blogger | Memasang Komentar Terbaru (Recent Comments). Keduanya tidak menggunakan struktur kode daftar urut (unordered list atau ordered list), namun menggunakan horizontal rule (<hr>) sebagai pemisah antar item atau hanya berupa break (<br>).

Sebenarnya membuat gadget atau widget posting atau komentar terbaru adalah sangat mudah, yaitu dengan memanfaatkan feed default bagi pengguna Blogger™.

h**p://namablog.blogspot.com/feeds/posts/default
h**p://namablog.blogspot.com/feeds/comments/default

Cara menambahkan kedua feed di atas dilakukan melalui kustomisasi Tata Letak (Layout) pada dashboard akun Blogger™ Anda.

Menambah Gadget/Widget

Kemudian pada jendela pop-up yang terbuka, pilih gadget “Feed”.

Gadget/Widget Feed

Masukkan URL feed default Blogger™ Anda, seperti yang telah diperlihatkan di atas (satu gadget berarti satu URL)& jangan lupa diganti nama blog yang berwarna merah dengan Blog Anda. Eksekusi dengan mengklik tombol “Continue”.

Konfigurasi Feed

Selanjutnya akan ditunjukkan beberapa pengaturan yang dapat Anda kustomisasi pada gadget atau widget feed yang baru dibuat tersebut. Akhiri dengan mengklik tombol “Save”.

Konfigurasi Feed Lanjutan

Mungkin yang kurang nyaman dilihat hanya pada gadget atau widget komentar terbaru (recent comments), karena isi komentar — jumlahnya dapat diatur pada saat konfigurasi feed — akan ditampilkan pula. Alternatifnya kita dapat mengganti dengan memilih gadget “HTML/JavaScript”, kemudian masukkan script berikut, sehingga komentar terbaru akan menampilkan nama komentator & judul posting.

<script type='text/javascript'>
//<![CDATA[
function showrecentcomments(r){document.write('<ul>');for(var g=0;g<a_rc;g++){var c=r.feed.entry[g];var p;if(g==r.feed.entry.length){break}for(var f=0;f<c.link.length;f++){if(c.link[f].rel=="alternate"){p=c.link[f].href;break}}p=p.replace("#","#");var m=p.split("#");m=m[0];var e=m.split("/");e=e[5];e=e.split(".html");e=e[0];var b=e.replace(/-/g," ");b=b.link(m);var o=c.published.$t;var l=o.substring(0,4);var d=o.substring(5,7);var a=o.substring(8,10);var n=new Array();n[1]="Jan";n[2]="Feb";n[3]="Mar";n[4]="Apr";n[5]="May";n[6]="Jun";n[7]="Jul";n[8]="Aug";n[9]="Sep";n[10]="Oct";n[11]="Nov";n[12]="Dec";if("content" in c){var j=c.content.$t}else{if("summary" in c){var j=c.summary.$t}else{var j=""}}var q=/<\S[^>]*>/g;j=j.replace(q,"");document.write('<li>');if(m_rc==true){document.write("On "+n[parseInt(d,10)]+" "+a+" ")}document.write('<a href="'+p+'">'+c.author[0].name.$t+"</a>");if(n_rc==true){document.write(" on "+b)}if(o_rc==0){document.write("</li>")}else{document.write(": ");if(j.length<o_rc){document.write("<i>&#8220;");document.write(j);document.write("&#8221;</i></li>")}else{document.write("<i>&#8220;");j=j.substring(0,o_rc);var h=j.lastIndexOf(" ");j=j.substring(0,h);document.write(j+"&hellip;&#8221;</i></li>");document.write("")}}}};
//]]>
</script>
<script style=text/javascript >var a_rc=5;var m_rc=false;var n_rc=true;var o_rc=0;</script><script src='h**p://namablog.blogspot.com/feeds/comments/default?alt=json-in-script&amp;callback=showrecentcomments'></script>

Catatan:
Widget komentar terbaru akan ditampilkan dalam daftar urut (<ul>). Teks “On” menunjukkan pemisah antara nama komentator & dengan judul posting. Angka 5 menunjukkan jumlah komentar & angka 0 merupakan isi komentar serta jangan lupa mengganti nama blog dengan blog Anda.

Untuk demonstrasi dapat dilihat pada sidebar atau footer Optimasi Blog — Komentar Terakhir & Posting Terakhir.

READ MORE - Widget Posting dan Komentar Terbaru yang Sederhana

Sunday, October 28, 2012

Membuat Halaman Arsip tanpa JavaScript

Setiap blogger pasti tahu, apa yang dimaksud dengan halaman arsip? Ya, betul sekali. Halaman itu terdiri dari kumpulan posting yang tersusun secara teratur, baik berdasarkan tahun, bulan, tanggal terbit, kategori, label, atau berisi keseluruhan item — yang telah disebutkan sebelumnya — dan sebagainya. Banyak sekali metode yang dapat dimanfaatkan untuk membuat halaman arsip, antara lain: menggunakan JavaScript & widget.

Trik blogger kali ini “Optimasi Blog” akan berbagi tentang membuat halaman arsip dengan menggunakan widget arsip dan widget label pada Blogger™. Ini didapat dari hasil blog-walking ke “Simple Blogger Tutorial” dalam posting Create a Separate Label or Archive Page in Blogger yang ditulis oleh Raju.

Petama, buatlah terlebih dulu sebuah halaman statis yang akan menampilkan arsip — contoh: Arsip — sehingga akan terbentuk sebuah permalink baru, seperti: h**p://namablog.blogspot.com/p/arsip.html. Isilah halaman itu dengan kalimat pembuka atau lainnya.

Kedua, masuk ke akun Blogger.com & pergi ke “Edit HTML”. Backup terlebih dulu template sebelum melakukan trik blogger ini. Perhatikan pula struktur pengkodean template, karena sangat dimungkinkan akan berbeda. Cari kode berikut, kemudian tambahkan kode yang berwarna merah di bawahnya.

  <b:section class='main' id='main' maxwidgets='1' showaddelement='no'>
<b:widget id='Blog1' locked='true' title='Blog Posts' type='Blog'/>
</b:section>
<b:section class='main' id='main1' maxwidgets='2' showaddelement='yes'/>

Jangan lupa disimpan & sekarang Anda telah memiliki elemen baru di bawah “Posting Blog”, dengan selector class='main' dan id='main1'. Elemen itu dapat Anda tambahkan maksimal 2 gadgetmaxwidgets='2' — pada dashboard Blogger™ dalam menu “Tata Letak” (Layout).

Ketiga, tambahkan widget label dan widget arsip dengan mengklik add a gadget, sehingga tidak ada lagi opsi add a gadget pada elemen di bawah “Posting Blog”. Oleh karena kedua widget tersebut akan ditampilkan hanya pada halaman tertentu, yakni h**p://namablog.blogspot.com/p/arsip.html, maka diperlukan kustomisasi dengan memanfaatkan conditional tags.

Blogger.com Layout

Keempat, kembali ke “Edit HTML” & centang Expand Widget Templates. Cari kode berikut — dalam widget arsip maupun widget label — kemudian sisipkan dengan kode yang berwarna hijau.

<b:widget … >
<b:includable id='main'>
<b:if cond='data:blog.url == "h**p://namablog.blogspot.com/p/arsip.html"'> <!-- sesuaikan alamat dengan halaman yang dibuat untuk arsip -->
…code widgets…
</b:if>
</b:includable>
</b:widget>

Conditional tags di atas berarti bahwa, widget akan ditampilkan hanya pada halaman dengan alamat h**p://namablog.blogspot.com/p/arsip.html, selain URL tersebut maka widget tidak akan ditampilkan.

Kelima, apabila menuju halaman lain — selain h**p://namablog.blogspot.com/p/arsip.html — masih terlihat janggal. Yah, mungkin tersisa ruang kosong karena pengaruh pengkodean elemen, seperti margin atau padding. Coba tambahkan CSS berikut di bawah ]]></b:skin>.

<b:if cond='data:blog.url != "h**p://namablog.blogspot.com/p/arsip.html"'>
<style>
#main1 {
display: none;
}
</style>
</b:if>

CSS (Cascading Style Sheets) di atas dimaksudkan, jika URL bukan h**p://namablog.blogspot.com/p/arsip.html, maka selector id='main'#main1 — disembunyikan.


Untuk demontrasi trik blogger di atas, silakan klik taut arsip “Optimasi Blog”. Apabila terdapat kekeliruan dalam deskripsi tentang membuat halaman arsip tanpa javascript, mari kita perbaiki bersama melalui kolom komentar. Begitu pula jika terdapat pertanyaan atau kritik dapat kita diskusikan pada media yang sama pula.

READ MORE - Membuat Halaman Arsip tanpa JavaScript
 
Support : Website | valawax | ka-sale
Copyright © 2011. Pucelle Blog - All Rights Reserved
Template Created by anakmuDa Published by MybloG
Proudly powered by Blogger