cbox

close
chat YM
Home » » Mengatasi Tombol Balas/Reply Komentar Pada Blog Yang Tidak Berfungsi

Mengatasi Tombol Balas/Reply Komentar Pada Blog Yang Tidak Berfungsi

den zuaz | 14.57 | 20comments
Kali ini saya sedikit share sebuah tips dan trik blog tentang cara mengatasi tombol balas / reply komentar yang tidak berfungsi pada blog, hal ini terjadi juga pada blog saya dan berhasil saya benahi. Postingan ini saya ambil dari salah satu blog / websait dengan alamat blog.kangismet.net. berikut ini adalah keterangan tutorialnya, silakan disimak,,

Mengatasi Error Pada Tombol Reply Komentar yang Tidak Bisa di Klik
Beberapa hari ini banyak komentar atau pertanyaan rekan-rekan blogger yang sudah menggunakan Threaded Comment (baca: Cara Membuat Threaded Comment di Blogger), ada masalah dengan tombol Reply / Balas.

Setelah saya cek, ternyata tombol reply / balas tidak berfungsi atau  form komentar tidak keluar. Hal ini disebabkan ada perubahan pada JavaScript threaded comment.

replyerror

Untuk mengatasi hal ini, ikuti langkah-langkah di bawah ini :

   1. Masuk ke Dasbor ---> Rancangan ---> Edit HTML
   2. Menjaga kegagalan, backup dulu template anda ---> Download Template Lengkap
   3. Centang Expand Template Widget
   4. Cari kode dibawah ini :

Klik show untuk melihat
<b:includable id='threaded_comment_js' var='post'>
  <script defer='defer' expr:src='data:post.commentSrc' type='text/javascript'/>

  <script type='text/javascript'>
    (function() {
      var items = <data:post.commentJso/>;
      var msgs = <data:post.commentMsgs/>;
      var postId = &#39;<data:post.id/>&#39;;
      var feed = &#39;<data:post.commentFeed/>&#39;;
      var authorName = &#39;<data:post.author/>&#39;;
      var authorUrl = &#39;<data:post.authorUrl/>&#39;;
      var blogId = &#39;<data:top.id/>&#39;;
      var baseUri = &#39;<data:post.commentBase/>&#39;;

// <![CDATA[
      feed += '?alt=json&v=2&orderby=published&reverse=false&max-results=50';
      var cursor = null;
      if (items && items.length > 0) {
        cursor = parseInt(items[items.length - 1].timestamp) + 1;
      }

      var bodyFromEntry = function(entry) {
        if (entry.gd$extendedProperty) {
          for (var k in entry.gd$extendedProperty) {
            if (entry.gd$extendedProperty[k].name == 'blogger.contentRemoved') {
              return '<span class="deleted-comment">' + entry.content.$t + '</span>';
            }
          }
        }
        return entry.content.$t;
      }

      var parse = function(data) {
        cursor = null;
        var comments = [];
        if (data && data.feed && data.feed.entry) {
          for (var i = 0, entry; entry = data.feed.entry[i]; i++) {
            var comment = {};
            // comment ID, parsed out of the original id format
            var id = /blog-(\d+).post-(\d+)/.exec(entry.id.$t);
            comment.id = id ? id[2] : null;
            comment.body = bodyFromEntry(entry);
            comment.timestamp = Date.parse(entry.published.$t) + '';
            if (entry.author && entry.author.constructor === Array) {
              var auth = entry.author[0];
              if (auth) {
                comment.author = {
                  name: (auth.name ? auth.name.$t : undefined),
                  profileUrl: (auth.uri ? auth.uri.$t : undefined),
                  avatarUrl: (auth.gd$image ? auth.gd$image.src : undefined)
                };
              }
            }
            if (entry.link) {
              if (entry.link[2]) {
                comment.link = comment.permalink = entry.link[2].href;
              }
              if (entry.link[3]) {
                var pid = /.*comments\/default\/(\d+)\?.*/.exec(entry.link[3].href);
                if (pid && pid[1]) {
                  comment.parentId = pid[1];
                }
              }
            }
            comment.deleteclass = 'item-control blog-admin';
            if (entry.gd$extendedProperty) {
              for (var k in entry.gd$extendedProperty) {
                console.log(entry.gd$extendedProperty[k].name + ' - ' + entry.gd$extendedProperty[k].value);
                if (entry.gd$extendedProperty[k].name == 'blogger.itemClass') {
                  comment.deleteclass += ' ' + entry.gd$extendedProperty[k].value;
                }
              }
            }
            comments.push(comment);
          }
        }
        return comments;
      };

      var paginator = function(callback) {
        if (hasMore()) {
          var url = feed;
          if (cursor) {
            url += '&published-min=' + new Date(cursor).toISOString();
          }
          window.bloggercomments = function(data) {
            var parsed = parse(data);
            cursor = parsed.length < 50 ? null
                : parseInt(parsed[parsed.length - 1].timestamp) + 1
            callback(parsed);
            window.bloggercomments = null;
          }
          url += '&callback=bloggercomments';
          var script = document.createElement('script');
          script.type = 'text/javascript';
          script.src = url;
          document.getElementsByTagName('head')[0].appendChild(script);
        }
      };
      var hasMore = function() {
        return !!cursor;
      };
      var getMeta = function(key, comment) {
        if ('iswriter' == key) {
          var matches = !!comment.author
              && comment.author.name == authorName
              && comment.author.profileUrl == authorUrl;
          return matches ? 'true' : '';
        } else if ('deletelink' == key) {
          return baseUri + '/delete-comment.g?blogID=' + blogId + '&postID=' + comment.id;
        } else if ('deleteclass' == key) {
          return comment.deleteclass;
        }
        return '';
      };

      var replybox = null;
      var replyUrlParts = null;
      var replyParent = undefined;

      var onReply = function(commentId, domId) {
        if (replybox == null) {
          // lazily cache replybox, and adjust to suit this style:
          replybox = document.getElementById('comment-editor');
          if (replybox != null) {
            replybox.height = '250px';
            replybox.style.display = 'block';
            replyUrlParts = replybox.src.split('#');
          }
        }
        if (replybox && (commentId !== replyParent)) {
          document.getElementById(domId).insertBefore(replybox, null);
          replybox.src = replyUrlParts[0]
              + (commentId ? '&parentID=' + commentId : '')
              + '#' + replyUrlParts[1];
          replyParent = commentId;
        }
      };

      var tok = 'comment-form_';
      var hash = window.location.hash || '';
      var startThread = hash.indexOf(tok) == 1 ? hash.substring(tok.length + 1) : undefined;

      // Configure commenting API:
      var configJso = {
        'maxDepth': 2
      };
      var provider = {
        'id': postId,
        'data': items,
        'loadNext': paginator,
        'hasMore': hasMore,
        'getMeta': getMeta,
        'onReply': onReply,
        'rendered': true,
        'initReplyThread': startThread,
        'config': configJso,
        'messages': msgs
      };

      var render = function() {
        if (window.goog && window.goog.comments) {
          var holder = document.getElementById('comment-holder');
          window.goog.comments.render(holder, provider);
        }
      };

      // render now, or queue to render when library loads:
      if (window.goog && window.goog.comments) {
        render();
      } else {
        window.goog = window.goog || {};
        window.goog.comments = window.goog.comments || {};
        window.goog.comments.loadQueue = window.goog.comments.loadQueue || [];
        window.goog.comments.loadQueue.push(render);
      }
    })();
// ]]>
  </script>
</b:includable>




5. Ganti semuanya dengan kode dibawah ini :

Klik show untuk melihat
<b:includable id='threaded_comment_js' var='post'>
  <script async='async' expr:src='data:post.commentSrc' type='text/javascript'/>

  <script type='text/javascript'>
    (function() {
      var items = <data:post.commentJso/>;
      var msgs = <data:post.commentMsgs/>;
      var config = <data:post.commentConfig/>;

// <![CDATA[
      var cursor = null;
      if (items && items.length > 0) {
        cursor = parseInt(items[items.length - 1].timestamp) + 1;
      }

      var bodyFromEntry = function(entry) {
        if (entry.gd$extendedProperty) {
          for (var k in entry.gd$extendedProperty) {
            if (entry.gd$extendedProperty[k].name == 'blogger.contentRemoved') {
              return '<span class="deleted-comment">' + entry.content.$t + '</span>';
            }
          }
        }
        return entry.content.$t;
      }

      var parse = function(data) {
        cursor = null;
        var comments = [];
        if (data && data.feed && data.feed.entry) {
          for (var i = 0, entry; entry = data.feed.entry[i]; i++) {
            var comment = {};
            // comment ID, parsed out of the original id format
            var id = /blog-(\d+).post-(\d+)/.exec(entry.id.$t);
            comment.id = id ? id[2] : null;
            comment.body = bodyFromEntry(entry);
            comment.timestamp = Date.parse(entry.published.$t) + '';
            if (entry.author && entry.author.constructor === Array) {
              var auth = entry.author[0];
              if (auth) {
                comment.author = {
                  name: (auth.name ? auth.name.$t : undefined),
                  profileUrl: (auth.uri ? auth.uri.$t : undefined),
                  avatarUrl: (auth.gd$image ? auth.gd$image.src : undefined)
                };
              }
            }
            if (entry.link) {
              if (entry.link[2]) {
                comment.link = comment.permalink = entry.link[2].href;
              }
              if (entry.link[3]) {
                var pid = /.*comments\/default\/(\d+)\?.*/.exec(entry.link[3].href);
                if (pid && pid[1]) {
                  comment.parentId = pid[1];
                }
              }
            }
            comment.deleteclass = 'item-control blog-admin';
            if (entry.gd$extendedProperty) {
              for (var k in entry.gd$extendedProperty) {
                if (entry.gd$extendedProperty[k].name == 'blogger.itemClass') {
                  comment.deleteclass += ' ' + entry.gd$extendedProperty[k].value;
                }
              }
            }
            comments.push(comment);
          }
        }
        return comments;
      };

      var paginator = function(callback) {
        if (hasMore()) {
          var url = config.feed + '?alt=json&v=2&orderby=published&reverse=false&max-results=50';
          if (cursor) {
            url += '&published-min=' + new Date(cursor).toISOString();
          }
          window.bloggercomments = function(data) {
            var parsed = parse(data);
            cursor = parsed.length < 50 ? null
                : parseInt(parsed[parsed.length - 1].timestamp) + 1
            callback(parsed);
            window.bloggercomments = null;
          }
          url += '&callback=bloggercomments';
          var script = document.createElement('script');
          script.type = 'text/javascript';
          script.src = url;
          document.getElementsByTagName('head')[0].appendChild(script);
        }
      };
      var hasMore = function() {
        return !!cursor;
      };
      var getMeta = function(key, comment) {
        if ('iswriter' == key) {
          var matches = !!comment.author
              && comment.author.name == config.authorName
              && comment.author.profileUrl == config.authorUrl;
          return matches ? 'true' : '';
        } else if ('deletelink' == key) {
          return config.baseUri + '/delete-comment.g?blogID='
               + config.blogId + '&postID=' + comment.id;
        } else if ('deleteclass' == key) {
          return comment.deleteclass;
        }
        return '';
      };

      var replybox = null;
      var replyUrlParts = null;
      var replyParent = undefined;

      var onReply = function(commentId, domId) {
        if (replybox == null) {
          // lazily cache replybox, and adjust to suit this style:
          replybox = document.getElementById('comment-editor');
          if (replybox != null) {
            replybox.height = '250px';
            replybox.style.display = 'block';
            replyUrlParts = replybox.src.split('#');
          }
        }
        if (replybox && (commentId !== replyParent)) {
          document.getElementById(domId).insertBefore(replybox, null);
          replybox.src = replyUrlParts[0]
              + (commentId ? '&parentID=' + commentId : '')
              + '#' + replyUrlParts[1];
          replyParent = commentId;
        }
      };

      var hash = (window.location.hash || '#').substring(1);
      var startThread, targetComment;
      if (/^comment-form_/.test(hash)) {
        startThread = hash.substring('comment-form_'.length);
      } else if (/^c[0-9]+$/.test(hash)) {
        targetComment = hash.substring(1);
      }

      // Configure commenting API:
      var configJso = {
        'maxDepth': config.maxThreadDepth
      };
      var provider = {
        'id': config.postId,
        'data': items,
        'loadNext': paginator,
        'hasMore': hasMore,
        'getMeta': getMeta,
        'onReply': onReply,
        'rendered': true,
        'initComment': targetComment,
        'initReplyThread': startThread,
        'config': configJso,
        'messages': msgs
      };

      var render = function() {
        if (window.goog && window.goog.comments) {
          var holder = document.getElementById('comment-holder');
          window.goog.comments.render(holder, provider);
        }
      };

      // render now, or queue to render when library loads:
      if (window.goog && window.goog.comments) {
        render();
      } else {
        window.goog = window.goog || {};
        window.goog.comments = window.goog.comments || {};
        window.goog.comments.loadQueue = window.goog.comments.loadQueue || [];
        window.goog.comments.loadQueue.push(render);
      }
    })();
// ]]>
  </script>
</b:includable>

   6. Save Template dan silakan lihat hasilnya,,
Sumber: http://blog.kangismet.net

Posted by : den zuaz - Author Zuaz'Z Creator™

Artikel Mengatasi Tombol Balas/Reply Komentar Pada Blog Yang Tidak Berfungsi ini diposting oleh den zuaz. Terimakasih atas kunjungan Sobat serta kesediaan Sobat membaca artikel ini. Kritik dan saran dapat Sobat sampaikan melalui kotak komentar. Apabila Sobat berminat silakan copy paste artikel ini dan mohon untuk mencantumkan sumbernya dengan menyertakan script di bawah ini:

Hormat saya: den zuaz

Bagikan artikel ini sobat :
Pemberitahuan:
Mohon maaf apabila komentar Sobat dari Facebook tidak bisa saya jawab semua, dikarenakan sulit untuk memoderasi komentar dari Facebook, bila sobat ada pertanyaan yang ingin lansung saya jawab, silakan Sobat berkomentar dari id Blogger.
Komentar Sahabat
20 Komentar Sahabat

20 comments:

jenal mengatakan...

Gan gimana cara nya ,membuat klik show untuk melihat....?? follow back ya gan ane udah nih.....

Yusuf mengatakan...

Makasih ilmunya, ALhamdulillah tombol replay sudah kembali berfungsi

den zuaz mengatakan...

sama2 sob,,,
ini ilmu dari blog kang ismet,,,

Anonim mengatakan...

terimakasih banyak ilmunya sob, sangat membantu sekali .....

den zuaz mengatakan...

@_black2share: Sama2 Sob,,

-Rayap KabeL- mengatakan...

Gan..sebelumnya mohon maaf saya mau tanya..
ente kok komentarnya masih pke (@_)

tombol Reply otomatisnya di blog agan fungsi??

den zuaz mengatakan...

@_-Rayap KabeL-: Template blog ini memang tidak ada tombol replynya sob,,
tutorial di atas di gunakan untuk template yang memiliki tombol reply tapi tidak berfungsi,,

AG mengatakan...

Wah.. terima kasih banyak mas atas informasinya...
akhirnya reply komentar ane bisa lagi.. padahal baru dua minggu bikin blog. dah error sana sini..
mohon reviewnya mas..
terimakasih
http://ik4computer.blogspot.com

Unknown mengatakan...

makasih gan infonya.......langsung ane coba nih tutornya :)

Unknown mengatakan...

Ane udah puyeng nyari masalah beginian, eeehhhhh akhirnya ketemu disini dan sudah terselesaikan. hahahaha
Terima kasih gan...............

Anonim mengatakan...

dulu sih gak ada masalah , tapi tadi pas mau bales koment eh ternyata tombolnya gak bisa.... trims gan udah bisa lagi

tes mengatakan...

Berhasil gan..akhirnya setelah saya cari kemana2 ..sekarang tombol saya sudah bisa berfungsi lagi..
http://pastidapetdollar.blogspot.com

Mas Adun mengatakan...

terimakasih banyak sob, tombol balas q sudah bisa clig..

Unknown mengatakan...

not work on my new page.. please help me :(
http://moral4all.blogspot.com/

Unknown mengatakan...

Gan kenpa ya, punya ane kok pas klik komen blogger-nya gak muncul reply + yg komen gk display di bwah postingan, ane barusan coba cara di atas tapi tetep gk berhasil.!! Ini Contohnya @ http://www.riyanghifar.com/2013/05/cara-membuat-widget-subscription-box.html

Unknown mengatakan...

Gan kenpa ya, punya ane kok pas klik komen blogger-nya gak muncul reply + yg komen gk display di bwah postingan, ane barusan coba cara di atas tapi tetep gk berhasil.!!

Unknown mengatakan...

Terimakasih, postingan anda sangat membantu !

ninis mengatakan...

ini postingan taun 2012 berguna banget deh! makasih banyak ya, gue udah coba dan berfungsiiiii thanks beraaat:D

Almamater Jakarta mengatakan...

udah ane coba, berhasil.. :D
main juga ke blog ane gan.. :)

www.irvanrobiansyah.com

proladies mengatakan...


cara menggugurkan kandungan dengan alkohol
cara menggugurkan kandungan dengan jeruk nipis
cara menggugurkan kandungan dengan paracetamol
cara menggugurkan kandungan dengan buah nanas
cara menggugurkan kandungan dengan buah durian
cara menggugurkan kandungan dengan buah strawberry
cara menggugurkan kandungan dan mempercepat haid
obat pelancar haid
jual obat pelancar haid
harga obat pelancar haid
obat pelancar haid cytotec
cara agar mudah datang bulan
cara mudah mengatasi datang bulan
cara mudah untuk cepat datang bulan
obat cepat datang bulan di apotik
obat untuk mendatangkan haid
obat pelancar haid
jual obat pelancar haid
harga obat pelancar haid
obat pelancar haid cytotec
obat pelancar haid
obat pelancar haid resep dokter
obat pelancar haid di apotik kimia farma
obat pelancar haid untuk remaja
obat pelancar haid menses
efek samping obat pelancar haid
obat untuk mendatangkan haid

Luangkanlah Sedikit Waktu Sobat Untuk Memperindah Blog Ini Dengan Berkomentar,, (^_^)

PERINGATAN,,!!!
Bagi Sobat Yang ingin berkomentar, mohon sesuaikan dengan tema pada postingan, dan saya mohon untuk tidak mencantumkan link (URL) pada komentar karena akan saya anggap spam dan mohon maaf apabila saya hapus komentar Sobat,,!!!

Pilih Bahasa Sobat

English French German Spain Italian Dutch

Russian Portuguese Japanese Korean Arabic Chinese Simplified
Designed By: den zuaz

Baca Juga Artikel Lainya Ya

Tuker Link Banner Yook

Bagi Sahabat Blogger Yang Bersedia Untuk Bertukar Banner Dengan Blog Zuaz'Z Creator Silakan Copy Code Di Bawah Ini Untuk Dipasang Di Blog Sobat
Email: dideardana@gmail.com
Banner Zuaz'z
..::: Like this yoo :::..
..::: Award Dari Sahabat :::..

Friendship Award
Dwi Semakin Sukses

banner coa-coba
den zuaz

^_^ iklan kosong ^_^

 
Copyright © 2012. Zuaz'Z Creator™ - All Rights Reserved
..::: Template designed by den zuaz | Powered by Blogger | Thanks for visiting :::..