Menonaktifkan Komentar Tanpa Menyembunyikan Komentar yang Sudah Ada

<b:if cond='data:post.allowComments'> adalah kondisional template yang berfungsi untuk menyatakan bahwa pemilik blog mengizinkan pengunjung untuk menuliskan komentar. Anda biasanya akan melihat kode ini membungkus semua elemen di dalam seksi komentar sehingga jika administrator mengeset opsi pengaturan untuk tidak mengizinkan pengunjung lain menuliskan komentar baru melalui panel pengaturan utama (bukan opsi pada pengaturan posting), maka seluruh komentar yang telah masuk akan ikut menghilang (disembunyikan):

<div class='comments' id='comments'>
  <b:if cond='data:post.allowComments'>

    <!--
      Seluruh konten di bagian ini akan menghilang jika
      Administrator mengeset opsi pengaturan untuk tidak mengizinkan pengunjung
      menuliskan komentar baru.
    -->

  </b:if>
</div>

Biasanya hal ini akan merugikan blog-blog bertipe diskusi yang ramai pengunjung, terutama jika komentar-komentar yang diterbitkan berguna untuk pembaca lain sebagai referensi tambahan.

Suatu saat mungkin Anda akan mengalami masa-masa sibuk atau katakanlah “sedang tidak mampu untuk membalas komentar-komentar yang masuk”. Saat Anda mengalami itu biasanya hal yang akan Anda lakukan adalah menutup komentar posting secara temporer dengan cara menyembunyikannya seperti ini:

Menonaktifkan Sekaligus Menyembunyikan Komentar
Menonaktifkan sekaligus menyembunyikan komentar pada semua posting.

Untuk menjaga agar komentar-komentar lama tidak hilang, Anda bisa memindahkan/memperbaharui wilayah kondisional <b:if cond='data:post.allowComments'> menjadi lebih sempit. Cukup hilangkan formulir komentarnya saja dan biarkan komentar-komentar yang sudah ada tetap pada tempatnya. Caranya adalah hapus kode <b:if cond='data:post.allowComments'> ... </b:if> yang mengelilingi elemen <div class='comments' id='comment'> sehingga akan tersisa seperti ini:

<div class='comments' id='comments'>
  ...
</div>

Kemudian cari elemen ini:

<b:include data='post' name='comment-form'/>

Ganti dengan ini:

<b:if cond='data:post.allowComments'>
  <b:include data='post' name='comment-form'/>
</b:if>

Temukan juga kode ini:

<b:include data='post' name='threaded-comment-form'/>

Ganti dengan kode ini:

<b:if cond='data:post.allowComments'>
  <b:include data='post' name='threaded-comment-form'/>
</b:if>

Masing-masing kode biasanya akan ditemukan dua buah, termasuk juga untuk seksi komentarnya. Dimana salah satu adalah elemen komentar yang akan aktif pada blog versi biasa dan satunya lagi aktif pada blog tampilan seluler.

6 Komentar

  • Unknown

    SIPZ

  • EM

    misal form komentarnya udah ditutup, terus saya ingin memberi tahu pengunjung bahwa komentar sudah ditutup, nah caranya gimana mas?
    tutorial ini sangat menarik bagi saya,
    terima kasih

    • Taufik Nurrohman

      Tambahkan <b:else/> sebelum </b:if>, lalu sisipkan pesan tertentu:

      <b:if cond='data:post.allowComments'>
      <b:include data='post' name='comment-form'/>
      <b:else/>
      <div class='message'>Komentar telah ditutup sampai hari kiamat menjemput kita semua</div>
      </b:if>
  • zahrotul wahyudi

    Super.. nice tutorial bro.. nuwun yo..

  • RizkyKR

    Mungkin dengan menggunakan tag yang saya rekomendasikan ini, Manajemenen komentar di blog pasti lebih profesional: ^_^ Semoga Membantu ;)

    Bisa dikontrol melalui postingan ataupun langsung dari Setingan Blog.


    <b:if cond='data:post.allowComments'>
    //Kontrol Semua komentar
    <b:if cond='data:post.allowNewComments'>
    //Kontrol Form komentar
    <b:else/>
    <p>Komentar baru tidak diizinkan</p>
    </b:if>
    <b:else/>
    <p>Komentar Ditutup.</p>
    </b:if>

    • Taufik Nurrohman

      Saya malah baru tahu soal tag kondisional data:post.allowNewComments

Komentar telah ditutup.