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.
kalau di comment.php nya gak ada ketemu kode di atas gimana mas?
tau pake jenis alert bukan pakai wp die gimana caranya?
Reply
Nuwun Infonya om alwi…
Reply
Fungsi script yang pertama
Reply
Perlu saya coba ini untuk mengatasi spamer, memang benar terkadang akismet sering salah tangkap dan kurang efektif. tp kasian juga mereka yang mau koment tidak bisa gara2 ga bisa tambah2han.. hahahahahahahhahaha
nice info mas
Reply
wah…, makasih gan. sangat membantu sekali. ini yang saya cari-cari. sekali lagi makasih yach.
Reply
Nice info… akan sangat berguna untuk menghindari komentar spam :) bagusnya lg ini tanpa plugin jd loading website tidak bertambah berat.
Reply
Mas kalau input name nya gak ada, gmn solusiny?
Reply
puyeng juga yah lihatnya, tapi gak apa deh iseng iseng pengen belajar siapa tahu aja bisa
Reply