Recent post 2.0 blogspot widget

12/10/2009 I Label:

     Ingat lagi recent comment 2.0 ? ..Tidak gua sangka recent post pun ada versi 2.0. Kelemahan recent post widget (blogspot) yang bikinan mat salleh rata-rata bukan recent post sangat sebab memaparkan entri yang sedia muncul pada laman utama. Jadi pembaca kalau telah membaca entri di page utama kemudian layan lagi recent post = loading semula entri yang sama = hanya akan menghampakan mereka..

2009-12-04_113528 

Kelebihan recent post 2.0 berbanding dengan yang lain :

(1) Membolehkan kita memaparkan entri masih baru yang sudah tiada di page utama. Contohnya bilangan entri di page utama blog kamu ada 5, jadi recent post 2.0 ini akan memaparkan entri yang ke # 6 dan seterusnya mengikut kemahuan individu.

(2) Satu lagi fungsi yang eklusif ialah terdapat fungsi next dan previous.

 

Customization 

Di dalam kode :

var nPostStartIndex = 6; <- - entri yang dipaparkan bermula daripada entri yang ke berapa
var nPostShow = 5;
  < - - jumlah entri yang dipaparkan

<div id="newPosts">
  <noscript>failed!<br/>Javascript not supported here!</noscript>
</div>

<script>
var nPostStartIndex = 6;
var nPostShow = 5;

function showRecentPosts(nIndex) {
  if (!nIndex)
    nIndex = nPostStartIndex;
  var sFeedURL = 'http://www.jejaktrend.com/feeds/posts/summary?orderby=published&start-index='+nIndex+'&max-results='+(nPostShow+1)+'&alt=json-in-script&callback=generatePosts';
  var script = document.createElement('script');
  document.getElementById('newPosts').innerHTML = 'Loading..';
  script.setAttribute('src', sFeedURL);
  script.setAttribute('type', 'text/javascript');
  document.documentElement.firstChild.appendChild(script);
}

function generatePosts(json) {
  function compareentry(a,b) {
    order= Date.parse(a.published.$t.replace(/^(\d{4})-(\d{2})-(\d{2})T([0-9:]*)([.0-9]*)(.)(.*)$/, '$1/$2/$3 $4 GMT')) - Date.parse(b.published.$t.replace(/^(\d{4})-(\d{2})-(\d{2})T([0-9:]*)([.0-9]*)(.)(.*)$/, '$1/$2/$3 $4 GMT'));
    return 0-order;
  }
  var sHTML = '<ul>';
  var sortentry = json.feed.entry.sort(compareentry);
  var nIndex = parseInt(json.feed.openSearch$startIndex.$t);
  var nTotalPost = parseInt(json.feed.openSearch$totalResults.$t);
  for (var i = 0, Post; Post = sortentry[i]; i++) {
    if (i >= nPostShow)
      break;
    var title = Post.title.$t;
    var j = 0;
    while (j < Post.link.length && Post.link[j].rel != "alternate")
      j++;
    var link = Post.link[j].href;
    var timestamp=Post.published.$t.substr(0,10);
    sHTML += '<li><span class="item-title"><a href="'+link+'">'+ title +'</a></span></li>';
  }
  sHTML += '</ul>';
  sHTML += generatePostLink(parseInt(json.feed.entry.length), nIndex, nTotalPost);
  document.getElementById('newPosts').innerHTML = sHTML;
}

function generatePostLink(nFetch, nIndex, nTotalPost) {
  var bOld = (nFetch > nPostShow);
  if (bOld) nFetch = nPostShow;
var sResult = '<p align="right">';
  if (nIndex > nPostStartIndex)
    sResult += '<a href="javascript:showRecentPosts('+(nIndex-nPostShow)+');" title="Newer Posts"><<</a>&nbsp;&nbsp;';
  if (bOld)
    sResult += '<a href="javascript:showRecentPosts('+(nIndex+nPostShow)+');" title="Older Posts">>></a>';
  sResult += '</p>';
  return sResult;
}
</script>

<script language="javascript">showRecentPosts();</script>

Cara memasang :

Pergi Dashboard > Layout > Add Gadge > Pilih Gadget HTML > Masukkan kode di atas * > Save.

* Jangan lupa menukar URL gua kepada URL blog kamu yer ~

 

Kredit kepada bro Abin

13 Comments :

Mr ProPiTo berkata...

Best gak ni, urm.. tapi aku nyer 2 colum punyer,,,kalo 3 colum mesti best

LORD ZARA 札拉 berkata...

syok ni~
dah le yg lama cam tak function je lagi~
panas je otakku~

Nabil berkata...

interesting but too bad that i'm using wordpress.
anyway, thanks for dropping by and being a fan. =)

..nOj.. berkata...

hai jalan2 disini... menarik gak ni... nanti kalau nk pasang ai dtg cni lg.. skang ade cam mud malas sket. hahah btw nice entry

bvlgarigirl @ Arianna berkata...

Akak dah review. dah tengok?

Eldy berkata...

@Arianna, dah.. thanks kak !

Hang TuARC berkata...

thnx bro!

identify berkata...

apa ni bro... cilok orang punya tutorial??

juk berkata...

Salam ziarah. Blog anda sgt menarik. Jemputlah dtg ke blog saya pula. Jom kita saling jadi follower? Buat MOU, OK? Thanks.

Zuki (zukidin.blogspot.com)

Eldy berkata...

@Identify, erm.. gua ada letak kredit di bawah ^@^ tau ke camne kerja cilok tak cilok nih ? jgn sengaja buat kacau di sini ye.. jgn beri malu kpd diri tau :P

@Juk, no prob ^_^) ~

Misz_zana85 berkata...

memang best ;))

Dak Wan berkata...

Uiks? Siap translate pastu credit ke source kira ciplak lg ke? Ni kira best la penat2 admin blog ni translatekan ke BM. Tqs admin.

Eldy berkata...

@Dark Wan, thanks sebab sudi sokong gua.. haha ~

Suarakan pandangan anda yang tersendiri :

Copyright 2010. All Rights Reserved. Theme designed by Eldy voon.