Pod ostatnim postem prosiłyście mnie, abym podpowiedziała Wam jak się to robi. Dlatego postanowiłam napisać o tym post, bo może więcej z Was potrzebuje w tym pomocy..
Postaram się wszystko dokładnie wyjaśnić, ale w razie czego proszę pytać, jeśli coś jest nie zrozumiałe.
(powiększcie obrazki aby było lepiej widać)
Krok 1 :
Wchodzimy w naszego Bloggera, klikamy w Układ
Krok 2:
Klikamy w Dodaj gadżet
Krok 3 :
W gadżetach wyszukujemy : HTLM/JavaScript i dodajemy go na bloga.
Krok 4:
W miejsce tytułu wpisujemy np. Najlepsi komentatorzy, Top komentatorzy (co tylko chcecie)
W treść wklejamy ten kod :
<style type="text/css">
.top-commenter-line {margin: 3px 0;}
.top-commenter-line .profile-name-link {padding-left:0;}
.top-commenter-avatar {vertical-align:middle;}
</style>
<script type="text/javascript">
//
// Konfiguracja:
var maxTopCommenters = 5; / 5 - liczba komentatorów
var minComments = 1; / 1 - najmniejsza liczba komentarzy
var numDays = 0; / z ilu ostatnich dni? 0 – cały czas
var excludeMe = true;
var excludeUsers = ["Anonymous", "Twój nick"]; / wpisz tutaj swój nick z google plus/bloggera
var maxUserNameLength = 42; / ile najwięcej znaków może mieć nick
//
var txtTopLine = '<b>[#].</b> [image] [user] ([count])';
var txtNoTopCommenters = 'No top commentators at this time.';
var txtAnonymous = '';
//
var sizeAvatar = 32; // wielkość avataru komentatora
var cropAvatar = true;
//
var urlNoAvatar = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQc152Y0Dj8gS8VoWYW5gUUXO6HMORlfUxPy7weX-b0_fsU1smgjCBThF5dbOfWVGzmm9-BPS9RKQjjVOa-JFyalviVwZTCInSbHBvga7Hd24QpaAobSvsvdrB8w0Ekk16AN-ERkqUAJQ/"+sizeAvatar+"/avatar_blue_m_96.png"; // http://www.blogger.com/img/avatar_blue_m_96.png resizeable
var urlAnoAvatar = 'http://www.gravatar.com/avatar/00000000000000000000000000000000?d=mm&s=' + sizeAvatar;
var urlMyProfile = '';
var urlMyAvatar = '';
// koniec konfiguracji
// dla starych IEs & IE modes:
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="top-commenter-avatar" 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="profile-name-link" 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); // assume ISO 8601
var cmtDate = new Date(datePart[0],datePart[1]-1,datePart[2],datePart[3],datePart[4],datePart[5]);
//Calculate difference btw the two dates, and convert to days
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;
});
// list top topcommenters:
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-commenter-line">');
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>
Napisy na fioletowym tle, usuwany po wklejeniu, są po to abyście wiedziały to oznaczają te liczby, które możecie zmienić według własnego uznania.
Krok 5:
Klikamy zapisz i GOTOWE ! ;*
Mam nadzieję że pomogłam, jeśli nie to piszcie .
PS.
Kochane widziałam w komentarzach, że nie chce Wam wejść, napiszcie do mnie na maila : wiesia.studnicka02@gmail.com , stworze wam kod według waszego uznania, dogadamy się co do szczegółów.
Ten komentarz został usunięty przez autora.
OdpowiedzUsuńWiesiu dziękuję bardzo choć widzę że to czarna magia dla mnie rano będę ćwiczyć bo jestem z takim oświetleniem na ten moment żę aż dzięki - buziaki ślę Marii
OdpowiedzUsuńDzieki dzięki juz próbuję,pa
OdpowiedzUsuńU MNIE TYLKO TYTUŁ WSZEDŁ, NIE UMIEM.....
OdpowiedzUsuńDziała idealnie ;-)) pięknie dziękuję!! muszę tylko się zastanowić od ilu dni to liczyć ;-)) hahaa
OdpowiedzUsuńdOBRA,DZIAŁA ALE POKAZUJE MNIE JAKO KOMENTATORKE TO CO Z TYM ZROBIC TERAZ?
OdpowiedzUsuńWiesiu, Dziękuję!!!
OdpowiedzUsuńMiałam różne tego typu liczniki, ale nie było w nich możliwości wpisania z ilu ostatnich dni ma zliczać i pojawiały się różne liczby. Teraz mogę o tym decydować sama :))
Dzięki fajny poradnik
OdpowiedzUsuńOd dłuższego czasu bezskutecznie sama próbowałam znaleźć gadżet najlepszy komentator, dzięki. zaraz skorzystam z podpowiedzi.
OdpowiedzUsuńAjajaj, chyba coś robię nie tak, bo mam tylko tytuł "Najczęściej komentują" bez statystyki.
OdpowiedzUsuńJaki bym kod nie wklejała żle mi liczy komentarze nie wiem czemu:(
OdpowiedzUsuńYolcia mnie podesłała do tego tutka, piękne dzięki :-)
OdpowiedzUsuńA chyba na blog.pl nie działa, bo nie mam takiego widżetu Java... a tez chciałam sobie takie coś zrobić... no nic pozdrawiam!
OdpowiedzUsuń