Monday

Memasang Threaded Comment

Sekarang Blogspot dah boleh guna, rujuk blog aku kalau tak percaya.

Aku kagum dengan Shams Mahmood sebab berjaya menjadikan sistem threaded comment ini untuk blogspot. Terima kasih kepada Eins sebab sudi berkongsi tutorial ini dengan aku. Ianya tidak menggunakan sebarang aplikasi sumber ketiga seperti Debate Comments, Disqus dan banyak lagi. Apa yang menarik threaded comment ini menggunakan sistem komen sedia ada dari blogspot, kamu hanya perlu menambah sedikit javaskrip untuk mengaplikasikannya.

Bagi yang tidak pernah mendengar tentang apa itu threaded comment memang sedikit menyukarkan, ditambah lagi Blogspot sudah boleh mengaplikasikan sistem ini.

Walaubagaimanapun tutorial ini hanya sesuai untuk sistem komen secara full page, ianya mungkin ada sedikit masalah untuk sistem komen secara embbedded below post atau pop-up page. Kamu boleh mencubanya dan jika ada masalah sila kemukakan diruangan komen. Buat masa sekarang ianya masih dalam peringkat percubaan.

Memasang Threaded Comment

01. Pilih Template > Edit Html (tick Expand Widget Templates).

02. Cari kod ini :

]]></b:skin>


03. Tambahkan kod ini di atasnya.

.comment-segment {
margin-top: 10px;
margin-right: 10px;
}
.comment-level-0 {
margin-left: 10px;
}
.comment-level-1 {
margin-left: 25px;
}
.comment-level-2 {
margin-left: 40px;
}
.comment-level-3 {
margin-left: 55px;
}
.comment-level-gt3 {
margin-left: 70px;
}
.blog-author-comment {
background-color: #e2eef2;
border: 1px solid #7296e2;
padding: 5px;
}
.blog-nonauthor-comment {
background-color: #f8f8f8;
border: 1px solid #dddddd;
padding: 5px;
}
.deleted-comment {
color: gray;
font-style: italic;
}
.delete-comment-icon {
background: url("http://www.blogblog.com/rounders3/icon_delete13.gif")
no-repeat;
}
.comment-time {
font-size: 80%;
margin: inherit;
padding-left: 10px;
padding-bottom: 10px;
}
.reply-guide {
background-color: #ffffff;
border: #076a93 1px dotted;
display: none;
padding-right: 10px;
padding-left: 10px;
padding-bottom: 0.75em;
padding-top: 5px;
margin-right: 10px;
margin-bottom: 10px;
}
.reply-guide-header {
color: #076a93;
padding-top: 10px;
}
.reply-guide-list {
list-style: none;
padding-left: 2px;
margin-left: 2px;
}
.reply-guide-example {
font-size: 85%;
margin-right: 5px;
margin-bottom: 10px;
float: right;
border: 1px dotted #076a93;
padding: 5px;
}


04. Cari kod ini.

</head>


05. Tambahkan kod ini di atasnya.

<script type="text/javascript">
//<![CDATA[
/*
http://shamsmi.blogspot.com
http://dilarangmelarang.com (translated)
*/
function Author(C,A,B){this.id=C;this.name=A;this.url=B;this.toString=function(F){var E="\t";if(F){for(var D=0;D<F;D++){E+="\t"}}return"Author[\n"+E+"id="+this.id+", \n"+E+"name="+this.name+", \n"+E+"url="+this.url+"\n"+E+"]"}}function Comment(E,H,G,C,B,D,F,A){this.id=E;this.sequenceNumber=H;this.postedTime=G;this.body=F;this.deleted=A;this.deleteUrl=B;this.deleteText=D;this.parentId="";this.children=new Array();this.level=0;this.author=C;this.getChildCount=function(){return this.children.length};this.addChild=function(I){this.children[this.getChildCount()]=I.id;I.parentId=this.id;I.level=this.level+1};this.toString=function(K){var J="\t";if(K){for(var I=0;I<K;I++){J+="\t"}}return"Comment[\n"+J+"id="+this.id+", \n"+J+"sequence="+this.sequenceNumber+", \n"+J+"deleted="+this.deleted+", \n"+J+"parentId="+this.parentId+", \n"+J+"children=["+this.children+"], \n"+J+"level="+this.level+", \n"+J+"author="+this.author.toString(1)+", \n"+J+"posted time="+this.postedTime+", \n"+J+"body="+this.body+"\n"+J+"]"}}function trimBrsFromString(C){var F=trimString(C);var B=["<br>","<br >","<br/>","<br />","<BR>","<BR >","<BR/>","<BR />"];if(F){var E=true;while(E){E=false;for(var D in B){var A=B[D];if(F.indexOf(A)==0){F=F.substring(A.length);F=trimString(F);E=true}var H=F.length;var G=F.lastIndexOf(A);if(G>=0&&G==H-A.length){F=F.substring(0,G);F=trimString(F);E=true}}}}return F}function trimString(A){var E="";if(A){var D=false;for(var B=0;B<A.length;B++){var F=A.charAt(B);if(!D&&F!=" "&&F!="\n"&&F!="\t"){D=true}if(D){E+=F}}D=false;var C=-1;for(var B=E.length-1;!D&&B>0;B--){var F=E.charAt(B);if(!D&&F!=" "&&F!="\n"&&F!="\t"){D=true;C=B}}if(C>0){E=E.substring(0,C+1)}}return E}function addItem(A,B){A[B.id]=B}function getAllItems(C){var D=new Array();var B=0;for(var A in C){D[B]=C[A];B++}return D}function getItemsCount(C){var B=0;for(var A in C){B++}return B}var ALL_AUTHORS=new Object();var ALL_COMMENTS=new Object();function getNewAuthorId(){var C=1;for(var A in ALL_AUTHORS){if(ALL_AUTHORS[A]&&ALL_AUTHORS[A].id){var B=ALL_AUTHORS[A].id;if(B>=C){C=B+1}}}return C}function createAuthor(C,A,B){return new Author(C,A,B)}function addAuthor(A){addItem(ALL_AUTHORS,A)}function getAllAuthors(){return getAllItems(ALL_AUTHORS)}function getAuthorsCount(){return getItemsCount(ALL_AUTHORS)}function findAuthor(C,B){for(var A in ALL_AUTHORS){if(ALL_AUTHORS[A]){if(ALL_AUTHORS[A].name==C&&ALL_AUTHORS[A].url==B){return ALL_AUTHORS[A]}}}return null}function getNewCommentSequence(){var C=1;for(var A in ALL_COMMENTS){if(ALL_COMMENTS[A]&&ALL_COMMENTS[A].sequenceNumber){var B=ALL_COMMENTS[A].sequenceNumber;if(B>=C){C=B+1}}}return C}function createComment(E,H,G,C,B,D,F,A){return new Comment(E,H,G,C,B,D,F,A)}function addComment(A){addItem(ALL_COMMENTS,A)}function getAllComments(){return getAllItems(ALL_COMMENTS)}function getRootComments(){var D=new Array();var C=0;for(var A in ALL_COMMENTS){var B=ALL_COMMENTS[A];if(B&&B.level==0){D[C]=B;C++}}return D}function getCommentsCount(){return getItemsCount(ALL_COMMENTS)}function findComment(B){for(var A in ALL_COMMENTS){if(ALL_COMMENTS[A]){if(ALL_COMMENTS[A].id==B){return ALL_COMMENTS[A]}}}return null}function findLastCommentByAuthorName(C){var B=null;for(var A in ALL_COMMENTS){if(ALL_COMMENTS[A]){if(ALL_COMMENTS[A].author.name==C){B=ALL_COMMENTS[A]}}}return B}function findLastCommentByPartialAuthorName(C){var B=null;for(var A in ALL_COMMENTS){if(ALL_COMMENTS[A]){if(ALL_COMMENTS[A].author.name.toLowerCase().indexOf(C.toLowerCase())==0){B=ALL_COMMENTS[A]}}}return B}function addCommentHierarchy(D,C){if(D){C[C.length]=D;var A=D.children;for(var B in A){addCommentHierarchy(findComment(A[B]),C)}}}function getCommmentsInSortedOrder(){var D=new Array();var A=getRootComments();for(var B in A){var C=A[B];addCommentHierarchy(C,D)}return D}function ParsedResult(A,B){this.parentComment=A;this.body=B;this.toString=function(){return"[parentComment="+this.parentComment+", body="+this.body+", ]"}}function findParentCommentFromDescriptor(A){var B=findComment(A);if(B==null){B=findLastCommentByAuthorName(A)}if(B==null){B=findLastCommentByPartialAuthorName(A)}return B}function parseCommentBody(B,F){B=trimString(B);var A=B.indexOf("@");if(A==0){var H=B.indexOf("\n",0);var G=B.indexOf("<",0);var D=H;if(G>0&&(G<D||D<0)){D=G}if(D>2){var O=B.substring(1,D);O=trimString(O);var K=findParentCommentFromDescriptor(O);if(K==null){var J=O.indexOf(" ");if(J>0){var N=trimString(O.substring(0,J));K=findParentCommentFromDescriptor(N);if(K!=null){D=J+1}}}if(K!=null){var P=null;var Q=D;var C=B.indexOf("@",Q+1);if(C>Q){var M=trimString(B.substring(C));P=parseCommentBody(M,C)}if(P&&P.length>0&&P[0].parentComment!=null){var L=trimString(B.substring(D,C));var I=new ParsedResult(K,L);var E=[I].concat(P);return E}else{var L=trimString(B.substring(D));var I=new ParsedResult(K,L);return[I]}return E}}}var I=new ParsedResult(null,B);return[I]}function buildComment(C,K,H,L,G,I,M,A){var F=findAuthor(C,K);if(!F){F=createAuthor(getNewAuthorId(),C,K);addAuthor(F)}var D=parseCommentBody(A,0);for(var J in D){var E="";E=D[J].body;E=trimBrsFromString(E);var B=createComment(H+"."+J,getNewCommentSequence(),L,F,I,M,E,G);addComment(B);if(D[J].parentComment!=null){D[J].parentComment.addChild(B)}}}function substituteConstant(A,D,C){var B=A;while(B.indexOf(D)>=0){B=B.replace(D,C)}return B}function substituteConstantIfValueExists(D,A,I,C,H){var J=D;var F=J.indexOf(A);var E=J.indexOf(I);while(F>0&&E>F){var B=J.substring(F,E+I.length);var G=null;if(H&&H.length>0){G=substituteConstant(B,C,H);G=G.substring(A.length,G.length-I.length)}else{G=""}J=J.replace(B,G);F=J.indexOf(A);E=J.indexOf(I)}return J}function isBlogAuthor(B){var A=false;if(window.BLOG_AUTHORS){for(var C in BLOG_AUTHORS){if(BLOG_AUTHORS[C]==B){A=true;break}}}else{if(window.BLOG_AUTHOR){A=(BLOG_AUTHOR==B)}}return A}function applyCommentTemplateToComment(F,E){var A=F;A=substituteConstant(A,"${COMMENT.ID}",E.id);A=substituteConstant(A,"${COMMENT.TIMESTAMP}",E.postedTime);A=substituteConstant(A,"${COMMENT.AUTHOR.NAME}",E.author.name);var C=(E.level>3)?"gt3":E.level;A=substituteConstant(A,"${COMMENT.LEVEL}",C);A=substituteConstantIfValueExists(A,"${COMMENT.AUTHOR.URL.EXISTS.START}","${COMMENT.AUTHOR.URL.EXISTS.END}","${COMMENT.AUTHOR.URL}",E.author.url);A=substituteConstant(A,"${COMMENT.AUTHOR.URL}",E.author.url);A=substituteConstant(A,"${COMMENT.DELETE.URL}",E.deleteUrl);A=substituteConstant(A,"${COMMENT.DELETE.TEXT}",E.deleteText);A=substituteConstant(A,"${COMMENT.BODY}",E.body);var D=isBlogAuthor(E.author.url)?"blog-author-comment":"blog-nonauthor-comment";A=substituteConstant(A,"${BLOG.AUTHOR}",D);A=substituteConstant(A,"${BLOG.POST.COMMENT.LINK}",BLOG_POST_COMMENT_LINK);var B=(E.deleted)?"deleted-comment":"";A=substituteConstant(A,"${COMMENT.DELETED.STYLE}",B);document.writeln(A)}function applyCommentTemplate(C){var D=getCommmentsInSortedOrder();for(var A in D){var B=D[A];applyCommentTemplateToComment(C,B)}}function setElementDisplay(B,C){var A=document.getElementById(B);if(A){A.style.display=C}}function setElementsDisplay(B,C){for(var A in B){setElementDisplay(B[A],C)}}function showElements(A){setElementsDisplay(A,"block")}function hideElements(A){setElementsDisplay(A,"none")}function showElement(A){setElementDisplay(A,"block")}function hideElement(A){setElementDisplay(A,"none")}function toggleElementDisplays(C,B,D){if(C.innerHTML=="[hide]"){for(var A in B){if(D[A]=="both"||D[A]=="hide"){hideElement(B[A])}}C.innerHTML="[show]"}else{for(var A in B){if(D[A]=="both"||D[A]=="show"){showElement(B[A])}}C.innerHTML="[hide]"}};// ]]>
</script>


07. Cari kod ini.

<b:includable id='comments' var='post'>
<div class='comments' id='comments'>
...
</div>
</b:includable>

Ini adalah sebahagian kod. Pastikan semua kod dicari hingga akhir.

08. Gantikan kod ini dengan kod di atas :

<b:includable id='comments' var='post'>
<div class='comments' id='comments'>
<a name='comments'/>
<b:if cond='data:post.allowComments'>
<h4>
<b:if cond='data:post.numComments == 1'> 1 <data:commentLabel/>:
<b:else/><data:post.numComments/><data:commentLabelPlural/>:
</b:if>
</h4>

<b:if cond='data:post.numComments > 0'>
<!-- Include a post comment link before rendering the comments -->
<p class='comment-footer'>
<b:if cond='data:post.embedCommentForm'>
<b:include data='post' name='comment-form'/>
<b:else/>
<b:if cond='data:post.allowComments'>
<a expr:href='data:post.addCommentUrl'
expr:onclick='data:post.addCommentOnclick'><data:postCommentMsg/></a>
</b:if>
</b:if>
</p>
</b:if>

<!-- Loop through the comments adding the comment bodies in a hidden div -->
<b:loop values='data:post.comments' var='comment'>
<div style="display: none;" expr:id='"comment-body-" + data:comment.id' >
<data:comment.body/>
</div>
</b:loop>
<!-- Now create the comment using our javascript -->
<script type="text/javascript">
// USE THIS if YOU Have multiple Authors adding them in a comma separated form after removing the '//' from the next line
// var BLOG_AUTHORS = ['http://www.blogger.com/profile/firstauthor', 'http://www.blogger.com/profile/secondauthor', 'http://www.blogger.com/profile/thirdauthor'];
// Use this if you have just one author like this blog :)
var BLOG_AUTHOR = 'http://www.blogger.com/profile/onlyauthor';
var BLOG_POST_COMMENT_LINK = '<data:post.addCommentUrl/>';

var eCommentDelete = false;
var eAuthorUrl = '';
<b:loop values='data:post.comments' var='comment'>
eCommentDelete = false;
eAuthorUrl = '';
<b:if cond='data:comment.authorUrl'>
eAuthorUrl = "<data:comment.authorUrl/>";
</b:if>
<b:if cond='data:comment.isDeleted'>
eCommentDelete = true;
</b:if>

buildComment("<data:comment.author/>", eAuthorUrl,
"<data:comment.id/>", "<data:comment.timestamp/>", eCommentDelete,
"<data:comment.deleteUrl/>", "<data:top.deleteCommentMsg/>",
document.getElementById('comment-body-<data:comment.id/>').innerHTML);
</b:loop>
// <![CDATA[
var eCommentTemplate = '' +
'<div class="comment-segment comment-level-${COMMENT.LEVEL} ${BLOG.AUTHOR} ${COMMENT.DELETED.STYLE}" >' + '\n' +
' <a name="comment-${COMMENT.ID}"></a>' + '\n' +
' <span style="float: right; margin-right: 5px; " >' + '\n' +
' <a href="#" ' + '\n' +
' onclick="toggleElementDisplays(this, ' +
'[\'comment-${COMMENT.ID}-body\', \'comment-${COMMENT.ID}-footer\', \'reply-guide-${COMMENT.ID}\'], ' +
'[\'both\', \'both\', \'hide\']); return false;" >[hide]</a>' + '\n' +
' </span>' + '\n' +
' <span class="comment-author" >' +
'${COMMENT.AUTHOR.URL.EXISTS.START}' +
'<a href="${COMMENT.AUTHOR.URL}" rel="nofollow">' +
'${COMMENT.AUTHOR.URL.EXISTS.END}' +
'${COMMENT.AUTHOR.NAME}' +
'${COMMENT.AUTHOR.URL.EXISTS.START}' +
'</a>' +
'${COMMENT.AUTHOR.URL.EXISTS.END}</span>' + '\n' +
' said... ' + '\n' +
' <div id="comment-${COMMENT.ID}-body" class="comment-body" ><p>${COMMENT.BODY}</p></div>' + '\n' +
' <span class="comment-time">on ${COMMENT.TIMESTAMP}</span>' + '\n' +
' <div id="reply-guide-${COMMENT.ID}" class="reply-guide comment-level-0 " >' + '\n' +
' <span style="float: right;" ><a href="#" onclick="hideElement(\'reply-guide-${COMMENT.ID}\'); return false;" >[hide]</a></span>' + '\n' +
' <h4 class="reply-guide-header">How to Reply to this comment</h4>' + '\n' +
' <span>' + '\n' +
' To reply to this comment please ensure that <b>one</b> of the following lines: ' + '\n' +
' <span class="reply-guide-example" >' + '\n' +
' <b>Example:</b><br />' + '\n' +
' @${COMMENT.ID} <br />' + '\n' +
' My <b>first line</b> is one of the values <br />' + '\n' +
' shown on the left :) ' + '\n' +
' </span>' + '\n' +
' <ul class="reply-guide-list">' + '\n' +
'<li>@${COMMENT.ID}</li>' + '\n' +
'<li>@${COMMENT.AUTHOR.NAME}</li>' + '\n' +
' </ul>' + '\n' +
' is the <b>first line</b> of your comment. ' + '\n' +
' <br />' + '\n' +
' <a href="${BLOG.POST.COMMENT.LINK}"' + '\n' +
' >Click here to enter your reply</a>' + '\n' +
' </span>' + '\n' +
' </div>' + '\n' +
' <div id="comment-${COMMENT.ID}-footer" class="comment-footer">' + '\n' +
' <span><a ' +
'href="#" onclick="showElement(\'reply-guide-${COMMENT.ID}\'); return false;" >Reply</a></span> ' + '\n' +
' <span><a href="#comment-${COMMENT.ID}">Permalink</a></span> ' + '\n' +
' <span><a href="${COMMENT.DELETE.URL}" title="${COMMENT.DELETE.TEXT}" style="text-decoration: none;" ><span class="delete-comment-icon"> </span></a></span>' + '\n' +
' </div>' + '\n' +
'</div>' + '\n';

applyCommentTemplate(eCommentTemplate);
// ]]>
</script>
<p class='comment-footer'>
<a expr:href='data:post.addCommentUrl' expr:onclick='data:post.addCommentOnclick'><data:postCommentMsg/></a>
</p>
</b:if>
<div id='backlinks-container'>
<div expr:id='data:widget.instanceId + "_backlinks-container"'>
<b:if cond='data:post.showBacklinks'>
<b:include data='post' name='backlinks'/>
</b:if>
</div>
</div>
</div>
</b:includable>




Tukarkan onlyauthor dengan id profile kamu jika kamu mempunyai 1 author. Tapi jika kamu lebih dari seorang author kamu boleh gantikan firstauthor, secondauthor dan thirdauthor dengan id profile masing-masing. Ianya untuk membezakan komen anda dengan komen penkomen lain.

09. Pilih Save. Lihat contohnya di sini.

124 comments:

  1. Cam rumit jak Juki.
    Huhuhu!!!

    ReplyDelete
  2. @7380553679672153525.0
    ianya memang rumit sedikit tapi kalau ada komen yang banyak kita boleh komen mana yang perlu saja bila-bila masa saja. Tak adalah kita komen sekaligus bukan?

    ReplyDelete
  3. Anonymous23.3.09

    @4106285534764779799.0
    betul betul betul.

    ReplyDelete
  4. @1290115615977844174.0
    Hek hek hek.

    ReplyDelete
  5. haha. memang cool la!

    lepas ni dah xbanyak perbezaan la antara blogspot dengan wordpress.

    ReplyDelete
  6. wah bagus tut ni..
    bleh try nnt
    (^,^)

    ReplyDelete
  7. @2470757830056125723.0
    Tak ada benda yang mustahil sekarang. Semua benda boleh buat cuma cepat atau lambat je.

    ReplyDelete
  8. untuk XML templates je ye ?

    ReplyDelete
  9. @4092407565986506630.0
    yup rara, ianya memang untuk XML. mungkin boleh cuba untuk klasik, mana tahu menjadi.

    ReplyDelete
  10. huhuhu...

    =,=",
    yang nie da paham.
    lalala...

    ReplyDelete
  11. @Marzuki Jalil
    macam ada sikit pelik je cara jawab comment dia.. mcm twitter.. hehe

    ReplyDelete
  12. x bjaya... xpe la.. lain kali cuba lg...

    ReplyDelete
  13. @8649727209227855057.0
    nak reply pun aku pening macam mana

    ReplyDelete
  14. PENTULIS24.3.09

    aku gagal melaksanakan tutorial ni.. huh.. demn

    ReplyDelete
  15. terima kasih.tetapi komplikasi tinggi.HAHAH.tengs for tutorials.

    ReplyDelete
  16. menarik
    nnt nak try

    ReplyDelete
  17. ini yang aku cari2...

    marzuki cuba tgk js-kit punya comment style.. bila orang reply atau leave komen kat aku dia tak appear dekat blogspot... pening aku...

    ReplyDelete
  18. @7709726332894896153.0

    juz ada sikit problem.kat recent comment muncul id comment tue.

    dan aku tengok,ada satu jer comment kat post nie yang jadi macam tue.Adakah ini kesilapan semasa menulis comment ??

    ReplyDelete
  19. @2470757830056125723.0
    wordpress tetap lg canggih sebab adanya bahasa Php yg lagi maju dan fleksible.huh.

    ReplyDelete
  20. @66744733241241603.0
    Tu dah jadi tu. Hakhak.

    ReplyDelete
  21. @7903781853706243522.0
    Bukan macam Twitter. Macam DilarangMelarang, hekhek.

    ReplyDelete
  22. Sejak bila maria ozawa mengatakan ko hensem(gambar di step 9)..haha.

    ReplyDelete
  23. mcm mane aku nak buat yang, hanya aku je boleh reply komen. meaning. aku tanak komen tu berpanjang2.tuan blog je blog reply.

    ReplyDelete
  24. @8904801970759141552.0
    tak tercapai akal aku, ahahaha.

    ReplyDelete
  25. weh... dah ade? rase macam aku nak balik
    ke blogspot jer nih... hahaha~

    ReplyDelete
  26. @7994147938816505776.0
    Aku dah cakap, tulah telinga tak dengar sangat. Ahaha, nasi sudah menjadi basi.

    ReplyDelete
  27. @2530197530627279354.0
    Itu sudah termaktub dalam tos dia. Nak tak nak terimalah. Sebab tu aku tak guna JS-Kit atau seumpamanya.

    ReplyDelete
  28. @3330213677446364560.0
    Recent komen tu boleh guna versi nama penkomen dan tajuk entri yang dikomen. Nanti aku carikan versi itu.

    Yang lain tak jadi sebab cara aku komen tak sama macam cara komen threaded komen. Amat sesuai untuk blogger baru.

    ReplyDelete
  29. @3411580719795448824.0
    Aku oke je dengan PHP cuma aku malas nak buat tutorial tentang WP. Pengguna WP memang susah nak ajar sebab kebanyakkan sudah terbiasa dengan plugin.

    ReplyDelete
  30. @3288788133371481500.0
    Sejak aku jumpa dia bawah tangga. Ahaha, tu kucing akulah.

    ReplyDelete
  31. wa...bagus2...nanti aku cuba..thanks...aritu aku nak pakai intansedebate, tapi takut memberatkan blog je...dah ada ni best le...tankiu-tankiu :)

    ReplyDelete
  32. nasib aku tak pakai blogspot dah.. kalo tak memang kene cuba la ni.. good job bro..

    ReplyDelete
  33. aku tak sure bole buat ke idak...

    ReplyDelete
  34. though I don't understand what most people are saying here, probably they like it and I'm really pleased to know that :D

    ReplyDelete
  35. @6698471877547586033.0
    English is not my primary language but i think you are cool man. We love this hack.

    ReplyDelete
  36. @3229455495163471621.0
    Boleh je. cuba buat ikut step yang aku ajar.

    ReplyDelete
  37. @5269964545299644709.0
    They are telling your threaded comment hack is good, haha...

    ReplyDelete
  38. Boleh buat numbered comment ngan threaded comment skali ke?

    ReplyDelete
  39. Blur den.
    Nak reply komen x lepas lg nih.
    Ajari daku Juki. :(

    ReplyDelete
  40. @922816340258882129.0
    Malam ni nak buat tutorial kalau ada masa, tunggu.

    ReplyDelete
  41. @6232207123807442781.0
    Jangan lupa cakap aku hensem kat dia. Ahaha.

    ReplyDelete
  42. ahh!! gagal.
    XML error message

    uwaaa.. nk jgk

    ReplyDelete
  43. ehh. sy rasa sy da bjaya la!!
    tima kaseh!!

    wah. gumbira nya

    ReplyDelete
  44. mekasih marjuki, memang andalah hero aku, hehe.dah berjaya memasangnya!!

    ReplyDelete
  45. hebat.. tp aku guna WP :)

    ReplyDelete
  46. @6828990505144461521.0
    Kalau WP guna Brian Threaded Comment je kot, itu paling kemas.

    ReplyDelete
  47. da lamer cari..
    ehheheheh!!
    tenkiu sgt!!
    nak try r

    ReplyDelete
  48. @6698471877547586033.0
    I'd like to express my utmost gratitude towards your assistance in creating this comment's thread into my blog. Though it was not that easy but with your guidance it was then successfully created. Thanks a lot.

    ReplyDelete
  49. aku pakai pop up, mmg tak dpt buat..huhu

    ReplyDelete
  50. yana da try..
    hehe ~~
    hasilnya menjadi..syukran..!!

    ReplyDelete
  51. Nur Insyirah26.3.09

    threaded komen nie apekebenda ye ek??
    aq agk kurg peka ttg sume nie...sori
    lampi sket

    ReplyDelete
  52. Nur Insyirah26.3.09

    g satu cmne ko wat cm amik gamba threaded komen nie ek??
    yg ko letak gamba kat ats sekali??

    ReplyDelete
  53. @6232207123807442781.0

    Not a hack, a little bit of javascript magic ;)

    ReplyDelete
  54. @8936356998535025930.0

    Assuming that message was for me, you're welcome :D

    ReplyDelete
  55. dh wat...

    tp xbole la..

    mmg xreti den nak wat..

    ReplyDelete
  56. pening2..
    dah try wat
    tp tak jadi...

    hehhehehe

    ReplyDelete
  57. kah kah kah, dah jadi. Aku ikut tutorial asal dari shams. Thanks sebab kasitau pasal threaded comment ni. nanti aku tulis entri pasal ni

    ReplyDelete
  58. @Helmi Razali
    aku ada tukar sikit coding dia, untuk sesuaikan dengan nafsu serakah aku. muahaha.

    ReplyDelete
  59. "..includable id='comments'.."
    aku pnye kod xde menatang cam ats ni. cam ne nk replace gak? nk ltak mne? tq

    ReplyDelete
  60. er,,ade prob..
    bile klik reply xjd..huk3 ~~

    cmni..
    si A jd komen yana yg pertama..
    then yana komen balik..klik reply semula..
    ok..jadi..!!!

    then,,si B,C,D,E dan F hantar komen gak..
    yana nak komen kat si D je..
    yana klik butang reply pada komen si D tuh..
    last2 komen yg yana reply kuar bwh komen si F..
    cmner nih..??
    kirenyer tutorial yg yana ikut nih xjd ar ek..
    helppp..!!!

    ReplyDelete
  61. ok2. dh jmpe dh. lpe nk tick expand widget template. tp ia tetap x mnjadi. psl ape ye? tq

    ReplyDelete
  62. die blh gne dgn full page je. popup window x blh la. huhu.

    ReplyDelete
  63. @4648076196644619089.0
    aku suka nafsu sebegitu. ahahaha.

    ReplyDelete
  64. @2855668251352875511.0
    tick expand widget template, tu je.

    ReplyDelete
  65. cm menarik jek mende ni..tp sesuai ke ek nk guna tok pop up window..

    ReplyDelete
  66. salam...
    aku dah try...tapi aku x suka nak guna full page comment, kalau guna embedded below post, yg 1st level tu je okay, x dpt reply...
    cemner ko buat utk blog ko ni...ada kotak komen kat bawah :)

    ReplyDelete
  67. aku bukan nak mensepam, cuma nak khabor yg aku dah berjaya buat...ekkeke...thanks to both of you & shams :)

    ReplyDelete
  68. Nur Insyirah31.3.09

    http://www.bloggerbuster.com/2007/08/create-your-oen-recent-comments-widgets.html

    utk widget recent comment.
    aq tahu cri widget je tpi tutorial aku xtau

    ReplyDelete
  69. Nur Insyirah31.3.09

    http://www.nisa.via.my/2009/03/buat-favicon.html#comments

    salam
    juki..!!dlm nie asl xde comment box?

    dkt post yg ade komen sblm msukkn code nie ade box ye tpi yg sblm nie xde box ye pn xde...

    cmne nk fix??

    ReplyDelete
  70. Salam..Thanks bro...sangat berguna!!!

    ReplyDelete
  71. memang mula2 susah tapi bila try banyak kali alhamdulillah berjaya!

    ReplyDelete
  72. Admin31.3.09

    background blog aku hitam..tulisan putih..

    tp kotak komen nie wane putih..tulisan putih..

    jadi bila orang komen x nmpk tulisan..

    camne nak wat arr?

    ReplyDelete
  73. inn cuba wat,tapi no 7 tiada dalam code inn.

    help please?dah cuba cari,tak ada

    ReplyDelete
  74. aku nak test utk kali kedua,huhu

    ReplyDelete
  75. em marzuki..
    camne eh nak tukar font color dalam komen tu yek?
    sbb x nampak la tulisan die..tp nice..dah jadi la aku wat dlm blog..thnx again..

    ReplyDelete
  76. Anonymous1.4.09

    @ciK aMoi
    try sampai berjaya ye

    ReplyDelete
  77. @5889127374219328066.0
    kod no 2 tu adalah css, kat situ boleh tukar. Cuba cari color untuk tukar warna tulisan.

    ReplyDelete
  78. @3930563463209668513.0
    ada, cari baik-baik.

    ReplyDelete
  79. @5284942400535562181.0
    tukar kod color, fff untuk putih dan 000 untuk hitam.

    ReplyDelete
  80. salam...
    aku terpaksa disable balik threaded comment ni sbb utk entri baru x dpt post a comment, maybe faktor aku guna embedded below post setting kot...tp blog ko ni ok je...mcm mana ko atur rrr?

    ReplyDelete
  81. @HuRuL_Aini
    em bleh jer...cube setting kan kat comment..set full page..emded below mmg x bleh..hu3..jadi entri baru org x bleh komen..so pelik jugak marzuki nye blog ni bleh...hehehe..

    ReplyDelete
  82. @Marzuki Jalil
    ok tq...dah jadi..

    ReplyDelete
  83. dah dapat dah buat ^^

    ReplyDelete
  84. 4760972888313806391.0
    aku pun sama, dh penin aku nak betulkan..haha

    ReplyDelete
  85. @ciK aMoi
    no byk tu same je ngn nick name kite..die just numbering kan jer..hu3..sgt menarik la wat komen camni..

    ReplyDelete
  86. @1803017413335610920.0

    aku maksudkan ialah bila aku buat tnri baru, aku tak leh komen melainkan aku tukar setting pi pop up, aku dh tgk dh blog SHAMS tu, ada kat blogger yg mengalami masalah aku..huhu

    ReplyDelete
  87. @ciK aMoi
    oh ic..mmg pun popup ngn full page jer yg bleh..
    tp aku suke yg embded below tu..mcm blog ni..

    ReplyDelete
  88. @7979295031748809552
    aku dah tahu betulkan dah. aku siap ggole talk dengan shams lagi.haha
    akhirnya dia dah tolong aku betulkan.

    ReplyDelete
  89. @4342052515687410835.0
    Best betul tutorial niiiiiii!!! Tabik springggg!

    ReplyDelete
  90. Boleh tak tolong.. tadi dah buat dah tutorial ni & dah berhasil dah pun.
    Tapi masalahnya sekarang, saya tak dapat nak bezakan color comment author dgn non-author. Dah belek2 coding, ok je takde masalah. Tapi still color sama je takde beza.

    Macam mana? Tolonggggggg... kalau nak tgk contoh, sini contoh comment pada entri saya.

    ReplyDelete
  91. @4676631096886123681.0
    samalah masalah sy dgn syuhada ni..
    settong backgroun color n border ikut setting non author comment :D

    ReplyDelete
  92. bagus la sekali cuba terus berjaya...
    kotak komen kita dah cantik, tapi musykil la kenapa tempat untuk kita taip komen tu duduk sebelah atas yerk...?

    ReplyDelete
  93. alamak kenapa yerk bila kita dah siap, blog kita jadi lambat loading la...

    ReplyDelete
  94. trime ksh..aku buat jadik dah..mule2 xjadi..aku trbalikkan (p class="comment-footer") bru boleh..kat ctu ade 2 kodnyer..yg atas g bwh,yg bwh g kat atas..ssape yg jd tu,bole try care ni..

    ReplyDelete
  95. @3075535375059507156.0
    ops,bukn yg jd,yg x jd..he..he.
    silap

    ReplyDelete
  96. last step tw camne?>.
    yg onlyauthor tw..
    please help me!!..
    da pening da,

    ReplyDelete
  97. @3626584662443941051.0
    saye tolng ckit eh..onlyauthor tu id profile kamu.Klu kamu da siap msukkn semua kod kat atas tu,kamu tekan kat keyboard Ctrl+F ,tulis onlyauthor,pastu ganti ler dgn id kamu tu..

    contoh id saye(http://www.blogger.com/profile/06630077745947093190)tapi kamu ambik 06630077745947093190 jer,ganti dgn onlyauthor tu..
    aku pn bru jer bace td nih..barula boleh bezakn colour author dgn noauthor..trlupe nk tukr id td..he..he..

    ReplyDelete
  98. @8196890723486790887.0
    hmm... aku taktau bjaya ke idak buat menda nih... baru je sempat try... anyway.. thanks Juki...

    ReplyDelete
  99. @4844715463714548402.0
    thanks ZAI..
    nnti aLyn try buat lagi skali..

    ReplyDelete
  100. @1808468591169859653.0
    betul tu.

    ReplyDelete
  101. byk benda nak kena wat tu...

    ReplyDelete
  102. Juki... aku dah toraiii... ce tengok jap... ok ke dak??? mcm lain jerkkk... tah la.. pening aku ler...

    ReplyDelete
  103. salam.
    kalau dia tulis XML error message tu macam mana eh?

    ReplyDelete
  104. trima kasih...berjaya dengan sekali lafaz hakhak...anyway..aku guna embedded comment...takde masalah...=) thanx yow~

    ReplyDelete
  105. Aku berjaya melakukannya.. Seperti tidak percaya..

    ReplyDelete
  106. alhamdulillah, dah berjaya :))
    tp mcm mana nak ubah kedudukan tempat comment box ni eh?
    saya punya comment box kat atas, mcm marzuki punya ni kan kat bawah.
    coding mana nak kena adjust?

    ReplyDelete
  107. @2279418900705120850.0
    betul2. macam mana nk buat kotak comment kat bawah...?

    ReplyDelete
  108. @5471804078419308836.0
    jap3..
    onlyauthor amik dkt mna ni?.
    still xdpat..
    aduhai..

    ReplyDelete
  109. @145395848845210185.0
    sorry3..
    dia kata tmplate xleh sve..
    mnguji thap ksabaran level4..

    ReplyDelete
  110. jap, tak jadi ni!!!
    yg pasrt last 2
    ape maksud tukar onlyauthor dengan id profail?
    da copy paste semua da
    da save
    tp xde pon...

    ReplyDelete
  111. Anonymous18.4.09

    @6294383352643906362.0
    try

    ReplyDelete
  112. @5241710654180388634.0
    testing..

    ReplyDelete
  113. rinih aku tuko balik kpd yg asal... jenuh nak repair balikkk.. huhuhu

    ReplyDelete
  114. mohdisa17.5.09

    aku baru nak testing

    ReplyDelete
  115. aku suka yg nih... senang nak reply comment... tp tu ler... ade error la pulak... pape hal.. kalo dah update... soundcheck aku ye Juki...

    ReplyDelete
  116. Mangkuk.com10.6.09

    kenapa sy wat menjadi erk??? hehehe

    ReplyDelete
  117. npew wat xjadik pon?
    rumit la..

    ReplyDelete
  118. nak sangat buat benda alah ni..
    huhuh..
    tapi x pernah jadi..

    ReplyDelete
  119. Bos...bila nak replace kod yg last tu..emoticon yg kt dh letak pon pun abiess padam ek?tuh yg musykil tuh...takper aku cuba lagik...

    ReplyDelete
  120. kalau dah buat threaded comment, lepas tu tak nak...
    mcm mana nk buang semua code tu?
    code mana yg perlu dibuang?

    ReplyDelete