Lompat ke konten Lompat ke sidebar Lompat ke footer

Cara Membuat Widget Artikel Terbaru dengan Fungsi Previous dan Next


widget artikel terbaru
Cara Membuat Widget Artikel Terbaru dengan Fungsi Previous dan NextWidget artikel terbaru ini sama saja sebenarnya dengan widget recent post dengan thumbnail. Fitur modifikasi yang ditambahkan pada widget ini adalah adanya tombol fungsi previous dan next dibagian bawah widget. Nah inilah yang menjadi keistimewaan widget artikel terbaru ala Creating Website ini. Dengan tambahan tombol previous dan next ini maka pengguna dapat mengetahui artikel terbaru apa saja yang ada di blog anda tanpa harus repot membuka daftar isi blog. Kebetulan saya memang juga suka dengan karya-karya Maskolis terutama template-template buatannya yang keren banget, maka pada tips blogging kali ini saya kepingin share tutorial cara membuat widget artikel terbaru ini.  
                                           

Cara Membuat Artikel Terbaru dengan Fungsi Previous dan Next :
  1. Login ke dashboard blogger Anda
  2. Setelah itu pilih blog yang ingin anda tambahkan widget ini.
  3. Masuk ke menu Template >> Edit HTML, dan centang expand widget templates
  4. Backup dulu template anda sebelum melakukan editing.
  5. Setelah semua langkah diatas anda lakukan, letakkan kode berikut ini diatas kode ]]></b:skin> :

    #mas-terbaru{border:1px solid #585858;width:100%;margin:0 auto}
    #terbaru{margin:0px}
    .mas-elemen{border:1px solid #ccc;margin:5px 0;padding:5px;height:79px}
    .mas-elemen img{background:#999;padding:4px;float:left;height:70px;margin-right:8px;width:70px}
    .mas-elemen h6,.mas-elemen h6 a{font-size:12px!important;font-weight:700!important;margin:0;color:#111}
    .mas-elemen:hover{background-color:#c3c3c3}
    .mas-elemen p{font:14px PT Sans Narrow;text-align:justify;color:#555;line-height:14px;margin:5px 0}
    #mas-loading{color:#888;font-family:Tahoma;font-size:100px;letter-spacing:-10px;text-align:center;text-shadow:-5px 0 1px #444;background:#141414 url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh6I_y-JAfNj7ZwhigFBmDJJJm_dZnPFjarlGlJrm6JPp5MDGHUogKRzeaPtaOENkDsiGleSIs3N2VGS-6ELzzmBHVgO4cg_8Lx7HcP7LNWxZGTN-HVtL4MoEWnPwmyv7eXFvpbYjp8N40/s1600/loading.gif) no-repeat 50% 50%;height:470px;border:1px solid #c3c3c3}
    #mas-navigasifeed{border:1px solid #c3c3c3;color:#bbb;font-family:Verdana;font-size:12px;text-align:center;margin:0px}
    #mas-navigasifeed:hover{background-color:#c3c3c3}
    #mas-navigasifeed a{color:#141414!important;font-family:Tahoma!important;font-size:12px!important;font-weight:400!important;display:block;padding:5px 10px}
    #mas-navigasifeed span{padding:5px 10px}
    #mas-navigasifeed .next{float:right}
    #mas-navigasifeed .previous{float:left}
    #mas-navigasifeed .home{text-align:center}
    #mas-navigasifeed a:hover,#mas-navigasifeed span.noactived{color:transparant!important}
    Perhatikan tulisan warna biru diatas, itu adalah lebar dan tinggi thumbnail image.
  6. Selanjutnya masih pada posisi Edit HTML, masukkan kode berikut ini diatas kode </head> :

    <script type='text/javascript'>
    //<![CDATA[
    var numfeed = 5;
    var startfeed = 0;
    var urlblog = "http://infoheadline.blogspot.com/";
    var charac = 100;
    var urlprevious, urlnext;

    function maskolisfeed(johny,banget){
    var showfeed = johny.split("<");
    for(var i=0;i<showfeed.length;i++){
    if(showfeed[i].indexOf(">")!=-1){
    showfeed[i] = showfeed[i].substring(showfeed[i].indexOf(">")+1,showfeed[i].length);
    }
    }
    showfeed =  showfeed.join("");
    showfeed = showfeed.substring(0,banget-1);
    return showfeed;
    }
    function showterbaru(json) {
    var entry, posttitle, posturl, postimg, postcontent;
    var showblogfeed = "";
    urlprevious = "";
    urlnext = "";
    for (var k = 0; k < json.feed.link.length; k++) {
    if (json.feed.link[k].rel == 'previous') {
    urlprevious = json.feed.link[k].href;
    }
    if (json.feed.link[k].rel == 'next') {
    urlnext = json.feed.link[k].href;
    }
    }
    for (var i = 0; i < numfeed; i++) {
    if (i == json.feed.entry.length) { break; }
    entry = json.feed.entry[i];
    posttitle = entry.title.$t;
    for (var k = 0; k < entry.link.length; k++) {
    if (entry.link[k].rel == 'alternate') {
    posturl = entry.link[k].href;
    break;
    }
    }
    if ("content" in entry) {
    postcontent = entry.content.$t;
    } else if ("summary" in entry) {
    postcontent = entry.summary.$t;
    } else {
    postcontent = "";
    }
    if ("media$thumbnail" in entry) {
    postimg = entry.media$thumbnail.url;
    } else {
    postimg = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0yjdDFKB8hr8nNBWHALg1WMA7QbbkGnrsvLa6UP4A47SgOPfSFXgXW3fGvOfoINDwyao15yUUPt6yDpMk8HUlldWkWRTpR7Vallf3hyX1y12Zf1XMkfy5c8fRjPIs66pQMDRc_paqaKE/s1600/no+image.jpg";
    }
    showblogfeed += "<div class='mas-elemen'>";
    showblogfeed += "<a href='" + posturl + "' target='_blank'><img src='" + postimg + "' /></a>";
    showblogfeed += "<h6><a href='" + posturl + "'>" + posttitle + "</a></h6>";
    showblogfeed += "<p>" + maskolisfeed(postcontent,charac) + "...</p>";
    showblogfeed += "</div>";
    }
    document.getElementById("terbaru").innerHTML = showblogfeed;
    showblogfeed = "";
    if(urlprevious) {
    showblogfeed += "<a href='javascript:navigasifeed(-1);' class='previous'>&#9668; Previous</a>";
    } else {
    showblogfeed += "<span class='noactived previous'>&#9668; Previous</span>";
    }
    if(urlnext) {
    showblogfeed += "<a href='javascript:navigasifeed(1);' class='next'>Next &#9658;</a>";
    } else {
    showblogfeed += "<span class='noactived next'>Next &#9658;</span>";
    }
    showblogfeed += "<a href='javascript:navigasifeed(0);' class='home'>Home</a>";
    document.getElementById("mas-navigasifeed").innerHTML = showblogfeed;
    }

    function navigasifeed(url){
    var p, parameter;
    if(url==-1) {
    p = urlprevious.indexOf("?");
    parameter = urlprevious.substring(p);
    } else if (url==1) {
    p = urlnext.indexOf("?");
    parameter = urlnext.substring(p);
    } else {
    parameter = "?start-index=1&max-results=" + numfeed + "&orderby=published&alt=json-in-script"
    }
    parameter += "&callback=showterbaru";
    incluirscript(parameter);
    }
    function incluirscript(parameter) {
    if(startfeed==1) {removerscript();}
    document.getElementById("terbaru").innerHTML = "<div id='mas-loading'></div>";
    document.getElementById("mas-navigasifeed").innerHTML = "";
    var archievefeed = urlblog + "/feeds/posts/default"+ parameter;
    var terbaru = document.createElement('script');
    terbaru.setAttribute('type', 'text/javascript');
    terbaru.setAttribute('src', archievefeed);
    terbaru.setAttribute('id', 'MASLABEL');
    document.getElementsByTagName('head')[0].appendChild(terbaru);
    startfeed = 1;
    }
    function removerscript() {
    var elemen = document.getElementById("MASLABEL");
    var parent = elemen.parentNode;
    parent.removeChild(elemen);
    }
    onload=function() { navigasifeed(0); }
    //]]>
    </script>
    Keterangan :
    var numfeed = 5; >> Jumlah Artikel terbaru yang ditampilkan pada widget
    var urlblog = "http://infoheadline.blogspot.com/"; >> ganti dengan URL blog Anda
    var charac = 100; >> Jumlah karakter atau huruf pada setiap post.
  7. Setelah itu save templates, kemudian menuju ke layout pilih kotak yang akan ditambahkan widget ini. Klik add gadget >> HTML/Javascript masukkan kode berikut ini kedalamnya :

    <div id="terbaru"></div>
    <div id="mas-navigasifeed"></div>
    Terakhir save dan lihat hasilnya.

Demikian Cara Membuat Widget Artikel Terbaru dengan Fungsi Previous dan Next ini, kalau anda suka tinggal sedot aja kodenya dan pasang disidebar blog anda. Happy blogging..!!       

23 komentar untuk "Cara Membuat Widget Artikel Terbaru dengan Fungsi Previous dan Next"

  1. banyak bangat kodenya sob,...nggak bikin berat nih,..

    BalasHapus
  2. saya cari kemana-mana, ternyata ada disini apa yang saya cari, makasih buat infonya sob....

    BalasHapus
  3. @zulham
    Dari demo widget yang saya pasang pada template Thesis loadingnya masih tetap dalam hitungan detik. Jadi menurut saya tidak memberatkan loading blog meskipun kode scriptnya memang panjang sekali. Thanks sob..!

    BalasHapus
  4. saya dah pake yang animasi sayangnya

    BalasHapus
  5. gan tau cara mengatasi duplikat meta tag title ?m=1 di webmaster gk ?!

    BalasHapus
  6. aku Senang Bisa berkunjung disini. BANYAK inspirasi Yang Bisa saya temukan di Sini,. cara Sobat Yang BAGUS untuk dipelajari

    BalasHapus
  7. terima kasih atas informasinya, Baca2 artikel yang lain dulu deh.

    BalasHapus
  8. langkah2nya mudah sekali untuk diikuti, saya bookmark dulu postingannya
    trims banget mas

    BalasHapus
  9. agak terlalu berat, lanjur pencariannya...

    BalasHapus
  10. thenks ya gan..
    tp kurang cocok menurut saya, seperti amburadul,..

    BalasHapus
  11. thanks For Tutorialnya ..
    makasih brooo..

    BalasHapus
  12. jangan lupa mampir ya gan :)

    http://zoelvan.blogspot.com/

    http://suarizshop.blogspot.com/

    http://suciptotkg.blogspot.com/

    http://suciptocc.blog.com/

    BalasHapus
  13. wah mantap gan artikelnya ,,,ijin nerapinya ya gan, mampir ya www.bukuqw.com

    BalasHapus
  14. Info yang bagus gan, thx. Bisa saya terapkan di blog saya. Jadi tampilan nya semakin menarik. Terus update informasi gan

    BalasHapus
  15. makasih mas, untuk kode di atas /head bisa d kompress biar gak berat d loading

    BalasHapus
  16. thanks ya dah berbagi.. dah dicoba sayangnya gagal widgetnya ga muncul, jadinya coba yg lain dulu, tapi kalau boleh nanya kenapa ya ga muncul ?

    BalasHapus
  17. thanks info nya gan...
    kunjungu ya .. blogeko3.blogspot.com

    BalasHapus
  18. pusing mas ...
    tp makasih,,, info nya bagus ..

    BalasHapus