Informasi mengenai semua hal teknologi terbaru, tutorial, berita, edukasi, pembelajarn.

Selasa, 30 Mei 2017

Cara Membuat Widget Komentator Terbaik di Blogger

Dalam sebuah blog pasti ada yang namanya pengunjung, jika pengunjung tersebut sudah menyukai blog yang kita miliki, maka bukan tidak mungkin pengunjung blog tersebut sudah menjadi pengunjung tetap dari blog yang kita miliki. Pada tutorial kali ini saya akan membagikan cara membuay widget komentator terbaik di blogger.

(Baca juga : Cara Membuat Widget Recent Comments Ringan di Blog)

Dan pengunjung tersebut pasti sering meninggalkan beberapa komentar untuk blog kita, disini saya akan memberikan cara membuat widget komentator terbaik di blog.

Widget komentator terbaik ini gunanya agar pengunjung yang sering memberikan komentar, bisa terlihat di widget blog kita tentunya.
Cara Membuat Widget Komentator Terbaik di Blogger

Untuk cara membuat widget komentator terbaik ini, ikuti langkah-langkah dari saya.

(Baca juga : Cara Membuat Widget Breaking News 2 Style di Blogger)

Cara Memasang Widget Komentator Terbaik di Blogger

  1. Masuk ke akun Blogger kalian
  2. Pilih menu Tata Letak, pilih Tambahkan Gadget di lokasi yang di inginkan, kemudian pilih HTML/JavaScript
  3. Masukan script di bawah ini
  4. <style type="text/css">
    .top-commentators {
    margin: 3px 0;
    border-bottom: 1px dotted #ccc;
    }
    .avatar-top-commentators {
    vertical-align:middle;
    border-radius: 30px;
    }
    .top-commentators .commenter-link-name {
    padding-left:0;
    }
    </style>
    <script type="text/javascript">
    var maxTopCommenters = 8;
    var minComments = 1;
    var numDays = 0;
    var excludeMe = true;
    var excludeUsers = ["Anonymous", "admin"];
    var maxUserNameLength = 42;
    //
    var txtTopLine = '<b>[#].</b> [image] [user] ([count])';
    var txtNoTopCommenters = 'No top commentators at this time.';
    var txtAnonymous = '';
    //
    var sizeAvatar = 33;
    var cropAvatar = true;
    //
    var urlNoAvatar = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-Lkr6HVO82budlbuhiagbnuM785_ECFOxdGUt4Tno-V9qM-wxs3IOi6QZraZTY0BTDFB5caCT5X9HsMzPIA884umK0zDQn6oJNdC2RFlOqTu8OgdULtDsYFvBIiy9N4Aooh3Kns5TCY3k/s1600/avatar_blue_m_96.png" + sizeAvatar;
    var urlAnoAvatar = 'https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9JhVorryKkbH2E5JtA-u0NoeQOqlEaIVTUQtB92DfXXdvzIY1YucWVbUQu8Sc0tP3s33EMeDVjJ4-T5ysrCbtET4oHtuYntk2R5_DcgGpT2GAYBTkeEsdArrpBZIhyZtEsC5UwBBia8zy/s1600/avatar1.png' + sizeAvatar;
    var urlMyProfile = '';
    var urlMyAvatar = '';
    if(!Array.indexOf) {
    Array.prototype.indexOf=function(obj) {
    for(var i=0;i<this.length;i++) if(this[i]==obj) return i;
    return -1;
    }}
    function replaceTopCmtVars(text, item, position)
    {
    if(!item || !item.author) return text;
    var author = item.author;
    var authorUri = "";
    if(author.uri && author.uri.$t != "")
    authorUri = author.uri.$t;
    var avaimg = urlAnoAvatar;
    var bloggerprofile = "http://www.blogger.com/profile/";
    if(author.gd$image && author.gd$image.src && authorUri.substr(0,bloggerprofile.length) == bloggerprofile)
    avaimg = author.gd$image.src;
    else {
    var parseurl = document.createElement('a');
    if(authorUri != "") {
    parseurl.href = authorUri;
    avaimg = 'http://www.google.com/s2/favicons?domain=' + parseurl.hostname;
    }
    }
    if(urlMyProfile != "" && authorUri == urlMyProfile && urlMyAvatar != "")
    avaimg = urlMyAvatar;
    if(avaimg == "http://img2.blogblog.com/img/b16-rounded.gif" && urlNoAvatar != "")
    avaimg = urlNoAvatar;
    var newsize="s"+sizeAvatar;
    avaimg = avaimg.replace(/\/s\d\d+-c\//, "/"+newsize+"-c/");
    if(cropAvatar) newsize+="-c";
    avaimg = avaimg.replace(/\/s\d\d+(-c){0,1}\//, "/"+newsize+"/");
    var authorName = author.name.$t;
    if(authorName == 'Anonymous' && txtAnonymous != '' && avaimg == urlAnoAvatar)
    authorName = txtAnonymous;
    var imgcode = '<img class="avatar-top-commentators" height="'+sizeAvatar+'" width="'+sizeAvatar+'" title="'+authorName+'" src="'+avaimg+'" />';
    if(authorUri!="") imgcode = '<a href="'+authorUri+'">'+imgcode+'</a>';
    if(maxUserNameLength > 3 && authorName.length > maxUserNameLength)
    authorName = authorName.substr(0, maxUserNameLength-3) + "...";
    var authorcode = authorName;
    if(authorUri!="") authorcode = '<a class="commenter-link-name" href="'+authorUri+'">'+authorcode+'</a>';
    text = text.replace('[user]', authorcode);
    text = text.replace('[image]', imgcode);
    text = text.replace('[#]', position);
    text = text.replace('[count]', item.count);
    return text;
    }
    var topcommenters = {};
    var ndxbase = 1;
    function showTopCommenters(json) {
    var one_day=1000*60*60*24;
    var today = new Date();
    if(urlMyProfile == "") {
    var elements = document.getElementsByTagName("*");
    var expr = /(^| )profile-link( |$)/;
    for(var i=0 ; i<elements.length ; i++)
    if(expr.test(elements[i].className)) {
    urlMyProfile = elements[i].href;
    break;
    }
    }
    if(json && json.feed && json.feed.entry && json.feed.entry.length) for(var i = 0 ; i < json.feed.entry.length ; i++ ) {
    var entry = json.feed.entry[i];
    if(numDays > 0) {
    var datePart = entry.published.$t.match(/\d+/g);
    var cmtDate = new Date(datePart[0],datePart[1]-1,datePart[2],datePart[3],datePart[4],datePart[5]);

    var days = Math.ceil((today.getTime()-cmtDate.getTime())/(one_day));
    if(days > numDays) break;
    }
    var authorUri = "";
    if(entry.author[0].uri && entry.author[0].uri.$t != "")
    authorUri = entry.author[0].uri.$t;
    if(excludeMe && authorUri != "" && authorUri == urlMyProfile)
    continue;
    var authorName = entry.author[0].name.$t;
    if(excludeUsers.indexOf(authorName) != -1)
    continue;
    var hash=entry.author[0].name.$t + "-" + authorUri;
    if(topcommenters[hash])
    topcommenters[hash].count++;
    else {
    var commenter = new Object();
    commenter.author = entry.author[0];
    commenter.count = 1;
    topcommenters[hash] = commenter;
    }
    }
    if(json && json.feed && json.feed.entry && json.feed.entry.length && json.feed.entry.length == 200) {
    ndxbase += 200;
    document.write('<script type="text/javascript" src="http://'+window.location.hostname+'/feeds/comments/default?redirect=false&max-results=200&start-index='+ndxbase+'&alt=json-in-script&callback=showTopCommenters"></'+'script>');
    return;
    }
    // convert object to array of tuples
    var tuplear = [];
    for(var key in topcommenters) tuplear.push([key, topcommenters[key]]);
    tuplear.sort(function(a, b) {
    if(b[1].count-a[1].count)
    return b[1].count-a[1].count;
    return (a[1].author.name.$t.toLowerCase() < b[1].author.name.$t.toLowerCase()) ? -1 : 1;
    });
    var realcount = 0;
    for(var i = 0; i < maxTopCommenters && i < tuplear.length ; i++) {
    var item = tuplear[i][1];
    if(item.count < minComments)
    break;
    document.write('<di'+'v class="top-commentators">');
    document.write(replaceTopCmtVars(txtTopLine, item, realcount+1));
    document.write('</d'+'iv>');
    realcount++;
    }
    if(!realcount)
    document.write(txtNoTopCommenters);
    }
    document.write('<script type="text/javascript" src="http://'+window.location.hostname+'/feeds/comments/default?redirect=false&max-results=200&alt=json-in-script&callback=showTopCommenters"></'+'script>');
    </script>
    • Catatan :
      • var maxTopCommenters = 8; ganti angka 8 dengan angka yang kalian inginkan
      • admin, ganti admin dengan nama kalian
  5. Setelah selesai pilih Simpan.
  6. Jika berhasil, maka widget akan tampil seperti ini. Jika tidak tampil, berarti komentator di blog kalian masih sedikit.
    Cara Membuat/Memasang Widget Top Komentator Berbentuk Cloud


Demikian tutorial singkat dari saya mengenai cara membuat widget komentator terbaik di blogger. Untuk tutorial lainnya dari saya, silahkan kunjungi terus tutorialumum.com.

Terima kasih sudah berkunjung di blog saya ini, jika ada pertanyaan mengenai tutorial di atas silahkan masukan di kolom komentar.

Tidak ada komentar:

Posting Komentar