Showing posts with label footer. Show all posts
Showing posts with label footer. Show all posts

Saturday, January 5, 2013

Tip: Membuat Sidebar Akordion dengan JQuery di blog

· 0 comments
Pernahkan Anda memperhatikan sidebar blog Anda dan menyadari bahwa susunan elemen yang ada pada sidebar tersebut sebenarnya sama persis dengan kerangka akordion yang pernah Anda lihat di halaman tersebut?
Mari kita coba mengambil sudut pandang ini:


Kerangka Sidebar dan Widget pada Template Blogspot
Kerangka sidebar pada dasarnya bisa kita jadikan sebagai panel-panel akordion.
Setiap sidebar biasanya dibungkus oleh elemen #sidebar-wrapper dimana di dalamnya terdapat beberapa widget yang selalu terdiri dari elemen <h2> dan elemen tubuh widget itu sendiri seperti ini:
<div id='sidebar-wrapper'>
<h2>Blogger templates</h2>
<div class='widget-content'>
....
</div>
<h2>Blogroll</h2>
<div class='widget-content'>
....
</div>
<h2>Labels</h2>
<div class='widget-content'>
....
</div>
</div>
Jika Anda teliti dengan baik, ternyata model kerangka di atas sama persis dengan kerangka yang ada pada percobaan JQuery akordion yang pernah Saya tuliskan:
<div id='accordion'>
<h2>Panel 1</h2>
<div class='content'>
....
</div>
<h2>Panel 2</h2>
<div class='content'>
....
</div>
<h2>Panel 3</h2>
<div class='content'>
....
</div>
</div>
Itulah kesempatan Anda untuk menjadi kreatif hari ini. Kali ini kita akan menciptakan sidebar dengan efek akordion hanya dengan bermodalkan ide tersebut. Pertama-tama, tentunya harus kita ketahui beberapa elemen yang sama sebagai pemandu dan itu akan kita gunakan untuk memodifikasi potongan kode efek akordion ini:
$(function() {
$('#accordion .content').hide();
$('#accordion h2:first').addClass('active').next().slideDown('slow');
$('#accordion h2').click(function() {
if($(this).next().is(':hidden')) {
$('#accordion h2').removeClass('active').next().slideUp('slow');
$(this).toggleClass('active').next().slideDown('slow');
}
});
});
Sebagai contoh, elemen #accordion memiliki peran yang sama persis dengan elemen #sidebar-wrapper dan elemen .content juga memiliki peran yang sama dengan elemen .widget-content. Elemen h2 tidak perlu dipertanyakan lagi. Kesimpulannya adalah, untuk menciptakan sidebar akordion setidaknya kita harus memodifikasi kode di atas menjadi seperti ini:
$(function() {
$('#sidebar-wrapper .widget-content').hide();
$('#sidebar-wrapper h2:first').addClass('active').next().slideDown('slow');
$('#sidebar-wrapper h2').click(function() {
if($(this).next().is(':hidden')) {
$('#sidebar-wrapper h2').removeClass('active').next().slideUp('slow');
$(this).toggleClass('active').next().slideDown('slow');
}
});
});
Ya, cuma begitu saja modal dasar untuk menciptakan efek akordion pada sidebar. Asalkan kita sudah menemukan ID sidebar yang ingin kita jadikan sebagai target, maka sisanya tinggal melakukan beberapa modifikasi kecil saja.

Langkah-Langkah Membuat Sidebar Akordion

Pertama-tama masuklah ke halaman editor HTML template Anda, lalu temukan kode ini:
</head>
Salin kode di bawah ini dan letakkan di atasnya:
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js' type='text/javascript'></script>
<script type='text/javascript'>
//<![CDATA[
$(function() {
// Sembunyikan semua tubuh widget (tutup semua panel)
$('#sidebar-wrapper .widget-content').hide();
// Tambahkan class 'active' pada elemen <h2> pertama
// kemudian tampilkan elemen berikutnya dengan efek .slideDown(), sehingga panel akordion paling atas akan tampak terbuka
$('#sidebar-wrapper h2:first').addClass('active').next().slideDown('slow');

// Saat elemen <h2> yang berada di dalam elemen #sidebar-wrapper diklik...
$('#sidebar-wrapper h2').click(function() {
if($(this).next().is(':hidden')) {
// Sembunyikan semua panel yang terbuka dengan efek .slideUp()
$('#sidebar-wrapper h2').removeClass('active').next().slideUp('slow');
// Lalu buka panel yang berada di bawah elemen ini (elemen <h2> yang diklik) dengan efek .slideDown()
$(this).toggleClass('active').next().slideDown('slow');
}
});
});
//]]>
</script>
Kode yang Saya beri garis bawah adalah JQuery. Jika template Anda sudah dilengkapi dengan JQuery, singkirkan kode tersebut.
Sekarang coba simpan template Anda dan lihat apa yang terjadi pada sidebar blog Anda...

Tidak berhasil?

Oke, mungkin Anda mempunyai sidebar dengan ID yang berbeda. Coba periksa kembali template Anda dan temukan baris kode yang menggambarkan deretan widget sidebar blog Anda. Kurang lebih tampilannya seperti ini:
<div id='sidebar-wrapper-2'>
<b:section class='sidebar' id='sidebar' preferred='yes'>
<b:widget id='Label1' locked='false' title='Kategori' type='Label'/>
<b:widget id='PopularPosts1' locked='false' title='Entri Populer' type='PopularPosts'/>
<b:widget id='Stats1' locked='false' title='Statistik' type='Stats'/>
<b:widget id='HTML2' locked='false' title='Komunitas' type='HTML'/>
<b:widget id='HTML4' locked='false' title='Facebook Suka' type='HTML'/>
</b:section>
</div>
Atau Anda juga bisa melihat ID sidebar secara langsung dari halaman blog Anda melalui Add-on Firebug atau aplikasi web developer sejenis lainnya:


Melihat ID Sidebar dengan Firebug
Melihat ID Sidebar dengan Firebug
Nah, Anda bisa mengganti kode #sidebar-wrapper dengan ID yang Saya beri garis bawah untuk menciptakan efek akordion pada sidebar tersebut.
Satu tambahan lagi: Saat Anda mencoba menyentuh judul widget biasanya akan terasa sesuatu yang sedikit mengganjal. Ya, kursornya masih berupa kursor teks. Itu akan membuat elemen pemicu akordion tersebut menjadi tampak sebagai sesuatu yang tidak penting/tidak memiliki sesuatu yang penting (alah!). Kita harus mengubah pointer teksnya menjadi pointer jari telunjuk seperti halnya pointer standar yang selalu muncul pada semua link.
Ada dua cara untuk mengubah pointer teks pada elemen <h2> menjadi pointer telunjuk. Pertama, dengan cara menuliskannya secara langsung pada kode CSS seperti ini:
#sidebar-wrapper h2 {
cursor:pointer;
}
Atau cukup sisipkan fungsi JQuery .css() di depan selektor yang mengarah kepada elemen h2 seperti ini:
$(function() {
$('#sidebar-wrapper .widget-content').hide();
$('#sidebar-wrapper h2:first').addClass('active').next().slideDown('slow');
$('#sidebar-wrapper h2').css('cursor', 'pointer').click(function() {
if($(this).next().is(':hidden')) {
$('#sidebar-wrapper h2').removeClass('active').next().slideUp('slow');
$(this).toggleClass('active').next().slideDown('slow');
}
});
});
Mengenai fungsi .addClass('active'), .removeClass('active') dan .toggleClass('active') itu semua hanya untuk menandai panel akordion yang sedang aktif/terbuka. Katakanlah kita ingin membuat elemen <h2> yang sedang aktif berubah warna menjadi merah, maka dalam kode CSS Anda tinggal menambahkan selektor #sidebar-wrapper h2.active dan memberinya warna merah seperti ini:
#sidebar-wrapper h2.active {color:red;}


demo nya seperti sidebar yang punya saya tapi tapilan nya beda ..........

Format Posting Hanya Tampil Judul

· 0 comments
Selain menggunakan tag kondisional, salah satu cara praktis untuk menghemat ruang sidebar adalah dengan menerapkan sistem tabulasi widget sidebar otomatis seperti ini:


Tabulasi Widget Otomatis Blogger

Hasil akhir proyek ini nantinya akan secara otomatis membuat sejumlah widget (bisa ditentukan jumlahnya) membentuk tabulasi-tabulasi dimana judul widget akan menjadi elemen tabulasinya, sedangkan konten widget akan menjadi tubuhnya.

Pertama-tama masuklah ke halaman editor HTML templatemu, kemudian cari script yang tampak seperti ini:

<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js' type='text/javascript'></script>
Jika templatemu sudah dilengkapi dengan script tersebut, kita bisa langsung melanjutkan ke langkah berikutnya. Tapi jika belum ada, salin dulu script tersebut lalu letakkan di atas kode </head>

Setelah itu salin kode ini kemudian letakkan di bawah script tadi:

<script type='text/javascript'>
//<![CDATA[
var starttab = 0;
var endtab = 3;
var sidebarname = 'sidebar-wrapper';

var home_page_tab=location.href;if(home_page_tab.indexOf("blogger.com")!=-1){var starttab=-1;var endtab=-1}var $jtab1=jQuery.noConflict();$jtab1(document).ready(function(){var a="<div class='widget-wrapper'><ul class='tab-wrapper'></ul></div>";for(i=starttab;i<=endtab;i++){$jtab1("#"+sidebarname+" .widget h2").eq(i).hide();$jtab1("#"+sidebarname+" .widget").eq(i).hide();$jtab1("#"+sidebarname+" .widget .widget-item-control").eq(i).hide()}$jtab1("#"+sidebarname+" .widget").eq(starttab).before(a);i=0;j=0;$jtab1("#"+sidebarname+" .widget > h2").each(function(){if(i>=starttab&&i<=endtab){var b=$jtab1(this).text();$jtab1("#"+sidebarname+" .tab-wrapper").append("<li class='tab' id='tabid"+sidebarname+j+"'>"+b+"</li>");j++}i++});i=0;j=0;$jtab1("#"+sidebarname+" .widget").each(function(){if(i>=starttab&&i<=endtab){$jtab1(this).attr({id:"widgtabid"+sidebarname+j});$jtab1(this).addClass("hompitab");j++}i++});$jtab1("#"+sidebarname+" .tab").click(function(){$jtab1("#"+sidebarname+" .hompitab").hide();$jtab1("#widg"+$jtab1(this).attr("id")).fadeIn();$jtab1("#"+sidebarname+" .tab").removeClass("active-tab");$jtab1(this).addClass("active-tab")});$jtab1("#"+sidebarname+" .tab:first").click()});

//]]>
</script>

Terakhir tinggal meletakkan kode CSS ini di atas kode ]]></b:skin> atau </style>:

/*
* Modifikasi 3 Oktober 2011 :: Taufik Nurrohman
* (http://hompimpaalaihumgambreng.blogspot.com)
* (original: http://www.abu-farhan.com)
*/


.hompitab {
position:relative;
z-index:1;margin:0px 0px;
padding:0px 0px;
border:1px solid #ccc;
background:#fff;
}


.hompitab .widget-content {
margin:10px 15px !important;
}


ul.tab-wrapper {
margin:15px 0 -10px 0;
padding:0 0 0 0;
}


ul.tab-wrapper li {
position:relative;
z-index:0;
cursor:pointer;
background:#666;
padding:6px 8px 5px;
text-decoration:none;
color:#ebebeb;
font:bold 11px Arial,Sans-serif;
text-shadow:0 1px rgba(0,0,0,0.4);
display:inline;
list-style:none !important;
margin:0px 1px;
text-transform:uppercase;
-webkit-border-radius:3px 3px 0px 0px;
-moz-border-radius:3px 3px 0px 0px;
border-radius:3px 3px 0px 0px;
}


ul.tab-wrapper li.active-tab {
border:1px solid #ccc;
border-bottom-color:#fff;
background:#fff !important;
z-index:2;
color:#666;
text-shadow:none;
}

Ganti kode yang Saya beri warna merah dengan ID sidebarmu. (ID sidebar??)

Untuk menentukan ID sidebar, kamu cari baris kode yang kurang lebih tampak seperti ini:

<div id='sidebar-wrapper'>
<b:section class='sidebar' id='sidebar' preferred='yes'>
<b:widget id='PopularPosts1' locked='false' title='Populer' type='PopularPosts'/>
<b:widget id='Label1' locked='false' title='Media' type='Label'/>
<b:widget id='BlogArchive1' locked='false' title='Arsip' type='BlogArchive'/>
<b:widget id='HTML4' locked='false' title='Label' type='HTML'/>
<b:widget id='Followers1' locked='false' title='Pengikut' type='Followers'/>
</b:section>
</div>
Nah, kode yang Saya beri warna merah itulah yang dimaksud sebagai ID sidebar.
Kode var starttab=0;var endtab=3; adalah variabel untuk menentukan jumlah widget yang akan dijadikan tabulasi. Urutan pertama dimulai dari 0, keudian tentukan batas akhir widget pada variabel var endtab. Misalnya, jika kamu menuliskan angka 3 pada var endtab, maka empat buah widget di sidebarmu akan secara otomatis berubah menjadi elemen tabulasi, sementara selebihnya tidak.

Klik Simpan Template.


Contoh Template dengan Sistem Tabulasi Sidebar

Berikut ini adalah beberapa contoh template yang dilengkapi dengan sistem tabulasi sidebar, namun dengan metode target tabulasi yang sedikit berbeda. Ingin tahu perbedaannya? Bongkar saja!!!



love time blogger template

mentor blogger template

Sidebar Hanya Tampil Selain pada Halaman Artikel

· 0 comments
Beberapa orang mungkin merasa sedikit pusing ketika menemui sebuah situs dengan elemen halaman yang super komplit di segala penjuru, baik di sisi kanan maupun sisi kiri artikel. Mungkin tujuanmu memang baik, yaitu menyediakan semua fasilitas yang ada kepada para pembaca. Monitoring komentar, posting terbaru, daftar isi, ikon-ikon jejaring sosial dan masih banyak lagi. Tapi kalian harus ingat satu hal terpenting mengenai apa itu blog: ARTIKEL!
Jangan sampai mata para pembaca gentayangan melirik sisi kiri dan kanan artikel (yang kebetulan dipenuhi oleh gambar gadis-gadis cantik), sementara artikel itu sendiri dilupakan. Sangat tidak menyenangkan apabila pada akhirnya kamu menemukan komentar-komentar yang tidak bermutu di dalam artikelmu.
Kadangkala, seseorang memutuskan untuk menuliskan komentar dahsyat tidak semata-mata karena mereka tidak menyukai artikelmu, tetapi tidak jarang juga karena mereka merasa kebingungan.
Sidebar. Sebuah blok kecil dalam blog yang seharusnya menjadi prioritas pandangan ke dua justru menjadi berkuasa penuh karena munculnya godaan-godaan setan pernak-pernik blog yang merajalela merangsang nafsu birahi umat manusia di muka bumi ini. Jika kalian merasa bahwa sidebar di blogmu itu sangat mengganggu, ayo kita hilangkan saja!
Jangan khawatir, di sini kita akan menghilangkannya dengan tag kondisional, jadi sidebar hanya akan menghilang pada halaman tertentu saja.
Pertama-tama, masuklah ke tab Rancangan kemudian pilih Edit HTML.
Cari baris kode yang kurang lebih tampak seperti ini:
<div id='sidebar-wrapper'> 
<b:section class='sidebar' id='sidebar' preferred='yes'>
<b:widget id='Label1' locked='false' title='Kategori Posting' type='Label'/>
<b:widget id='BlogArchive1' locked='false' title='Arsip Blog' type='BlogArchive'/>
<b:widget id='Text1' locked='false' title='Obrolan Monyet' type='Text'/>
</b:section>
</div>
Sisipkan tag kondisional halaman item di luar elemen tersebut, sehingga tag kondisional tersebut sekarang berperan sebagai pembungkus sidebar. Seperti ini:
<b:if cond='data:blog.pageType != &quot;item&quot;'> 
<div id='sidebar-wrapper'>
<b:section class='sidebar' id='sidebar' preferred='yes'>
<b:widget id='Label1' locked='false' title='Kategori Posting' type='Label'/>
<b:widget id='BlogArchive1' locked='false' title='Arsip Blog' type='BlogArchive'/>
<b:widget id='Text1' locked='false' title='Obrolan Monyet' type='Text'/>
</b:section>
</div>
</b:if>
Klik Simpan Template.
Sebagai catatan, atribut id='sidebar-wrapper' itu tidak mutlak, setiap template mempunyai ID-nya masing-masing. Intinya adalah, kamu cari saja elemen <b:section> yang memiliki class='sidebar', kemudian temukan elemen divisi yang menjadi pembungkus dari tulang-belulang sidebar tersebut. Terakhir tinggal letakkan saja tag kondisional di luar objek tersebut.
Widget-widget yang berada di dalam seksi sidebar juga bisa menjadi panduan yang baik.
Berikut ini adalah contoh tampilan saat awal pertama kamu mengunjungi blogmu:
tutorial cara menampilkan sidebar hanya di halaman muka
Halaman depan
Setelah kamu memasuki halaman artikel (menekan tombol Baca Selengkapnya atau link Komentar), maka hasil tampilannya akan berubah menjadi seperti ini:
sidebar hanya tampil di halaman muka
Setelah masuk ke halaman item