Pasang Quiz Anti Spam Tanpa Plugin
Beberapa waktu yang lalu saya pernah membuat postingan tentang cara mengatasi dan mencegah spambot dengan atau tanpa plugin, kali ini akan saya bahas tips lainnya tentang cara ampuh mencegah spambot masuk ke blog wordpress yakni dengan menggunakan system quiz. Mungkin akan ada yang bilang akh udah biasa itu, kan banyak plugin-plugin model quiz seperti itu.
Tapi tips kali ini lain, karena kita akan memasang quiz anti spam tanpa menggunakan plugin, dan cukup menambahkan sedikit script di file wp-comments-post.php yang ada di root direktori dan file comments.php yang ada di folder theme yang digunakan. Metode kerjanya hampir sama dengan plugin model quiz, setiap ada yang mau berkomentar harus menjumlahkan angka yang ada di quiz tersebut. Kelebihannya karena tidak menggunakan plugin tidak akan menambah jumlah queri dan tidak akan mengganggu performa wordpress anda.
Kelebihan lain dari cara ini, sebagai admin anda tidak perlu menjawab pertanyaan dari quiz tersebut (penambahan angka) ketika akan berkomentar/membalas komentar, syaratnya anda harus dalam posisi log-in. Jadi tidak seperti plugin quiz anti spam pada umumnya yang agak kurang ramah sama si boss (admin), karena setiap kali akan berkomentar tetap harus menjawab quiz yang ada, dan ketika lupa dengan jawabannya walaupun anda sebagai admin tetap akan dianggap spam (Bye Bye, SPAMBOT), kasihan bener komentar di blog sendiri dianggap spammer heee …
Cara Pasang Script Quiz Anti Spam Tanpa Plugin :
1. Buka file wp-comments-post.php yang ada di root direktori wordpress anda.
2. Cari kode seperti ini : if ( '' == $comment_content )
setelah ketemu, tambahkan script di bawah ini, di atas atau sebelum kode tersebut :
wp_die( __('Error: please type a comment.') );
if ( !$user->ID ) { $aaa = trim($_POST[aaa]); $bbb = trim($_POST[bbb]); $subab = trim($_POST[subab]); if((($aaa+$bbb)!=$subab)|| empty($subab)){ wp_die( __('Sorry, You must answer the question to post a comment. Please go back and try again.!') ); } }
3. Buka file comments.php yang ada di folder theme yang anda gunakan.
Cari kode seperti ini : <input name="submit" type="submit" id="submit"
setelah ketemu, tambahkan script di bawah ini, di atas atau sebelum kode tersebut :
<?php if (!$user_ID) : ?> <?php $aaa=rand(0,5); $bbb=rand(3,9); ?><?php echo $aaa; ?>+<?php echo $bbb; ?>= <input type="text" name="subab" id="subab" size="2" tabindex="5" style="width:20px" /><?php if ($req) _e('(Plus)'); ?> <input name="aaa" value="<?php echo $aaa; ?>" type="hidden" /> <input name="bbb" value="<?php echo $bbb; ?>" type="hidden" /> <?php endif; ?>
Jika tombol submit komentar theme anda ada di sebelah kiri, maka kode/script tersebut anda tempatkan setelah kode untuk menampilkan tombol submit komentar (kode <input name="submit" type="submit" id="submit"
dan seterusnya). Ini dia contoh screenshot hasil dari tutorial di atas :
Anda juga bisa menempatkan dan memodifikasi kotak dan angka-angka anti spam quiz tersebut menyatu dengan field atau kotak yang biasa digunakan untuk menuliskan nama, email dan website ketika berkomentar. Contohnya seperti yang saya gunakan di blog ini.
Keterangan :
- Fungsi script yang pertama (yang ada di file wp-comments-post.php) akan mencegah komentar masuk ke wordpress anda jika dia lupa menjawab quiz atau menambahkan angka yang ada. Ketika quiz tidak dijawab maka akan keluar notifikasi ‘Sorry, You must answer the question to post a comment. Please go back and try again.!’. Anda bisa mengganti notifikasi tersebut sesuai selera anda, misalnya diganti dengan ‘Maaf yaa, silahkan dijumlahkan dulu angkanya’.
- Fungsi script yang ke dua (yang ada di file comments.php) akan menampilkan angka-angka yang harus dijumlahkan dan sebuah kotak untuk tempat menuliskan jawaban dari pertanyaan quiz tersebut.
- Jika anda melakukan update wordpress, maka fungsi script yang pertama (yang ada di file wp-comments-post.php) harus disetting ulang. Dan jika anda ganti theme maka fungsi script yang ke dua (yang ada di file comments.php) harus disetting ulang.
Terima kasih Mas Alwi, saya sudah berhasil menerapkan di blog saya.
Ok sama2, dari sisi fungsionalitas yg di blog Bang Rudy cukup keren, tinggal masukin angkanya saja tanpa perlu mikir lagi karena hasilnya sudah ditampilkan heee
—————————————————-
Reply
Saya Coba dulu master,,, Tengkyu atas tutorialnya… :-)
Reply
mas, mau tanya. cara ini udah saya terapkan di blog. kalo seaindainya upgrade WP, koding di atas hilang juga kan? ato gmana?
Jika anda melakukan update wordpress, maka fungsi script yang pertama (yang ada di file wp-comments-post.php) harus disetting ulang, kecuali jika kita sudah pakai wp 3.2.1 karena sudah mendukung update parsial namun demikian perlu dicek apakah file wp-comments-post.php termasuk di dalam daftar file revisi, jika iya maka harus diseting lagi. Dan jika anda ganti theme maka fungsi script yang ke dua (yang ada di file comments.php) harus disetting ulang.
_________________________________________________
Reply
Trimakasih mas atas info yg bermanfaat ini :)
Saya sudah menerapkan pd blog wordpress saya, tp knp ya kalau salah menjumlahkan angka nanti masuk ke halaman berbeda?tidak kembali ke halaman semula? (tidak seperti pada web mas alwi yang kalau salah memnjumlahkan angka langsung muncul pop up window,,) bagaimana mas cara mensettingnya agar bisa pop up window? dan pngunjung bisa kembali kehalaman semula?? mohon pencerahannya :)
Reply
mantab,..keren,.. blognya… saya newbie,.dan blog ini jadi referensi saya belajar…. trims bgt..
Reply
cari kode yang kedua ga ada di theme saya mas… gagal maning dah
Reply
nm iqbal Reply:27-08-2011 at 02:46
Saya bantu mas,.. Untuk pemasangan kode kedua ga mesti di comment.php pada theme. Untuk kasus mas arkhananta, kode kedua harus dimasukin di file comment-template.php.
Filenya ada di directory public-html/wp-include/
Klo dah ketemu, cari kode ini:
<input name="submit" type="submit" id="” value=”” />
Lalu, masukkan kode kedua dibawah kode tsb.
Semoga bermanfaat :)
Reply
djawa Reply:14-09-2011 at 23:04
mas mau tanya., ko punya sya ga ada code tersebut., dah dicari dmn2 trmasuk di coment.php jg ga ada.,? gmn mas caranya?
Reply
arkhananta Reply:5-10-2011 at 01:26
akhirnya ada juga kodenya, maksih banyak n sukses slalu…
Reply
Nice :)
dulu ini blog yah ?
skrg dah jadi website ?
brp pengunjung sehari sob ?
Reply
supaya posisinya sejajar gimana ya mas? kotak isiannya ada di bawah submit… mohon sarannya
sekalian tukar link kang, linknya sudah saya pasang di blog saya, kalo berkenan pasang juga link saya … heee (ngarep)
Reply
kalo tampilan Quiz Anti Spam kaya blog ini gmn kang??
Reply
Sip makasih mas. Sudah berhasil tampil dan fungsinya juga bener. Langsung deactivate plugin amcaptcha
Reply