7. 如無Referrer請求則禁止發表評論- z+ o' O- a; {9 r' m' [
# ~! K. q$ u- v N' c1 c8 W
問題:垃圾評論是讓所有博主都頭疼的問題。儘管Akismet能夠幫你應付這些問題,但如果能化被動為主動豈不是更好?以下給出的代碼在wp-comments-post.php被訪問時,會查找referrer(即URL來源頁面)。如果此時存在一個referrer,且為你Blog的URL,那麼就可以發表評論。反之,頁面將會停止載入,而評論也就無法發表了。
8 q, k Y/ B$ `; f) D) W1 ~8 U m: M" k. O( {- v2 y% D5 ?
解決方案:要應用此hack的話,直接將以下代碼粘貼到外觀主題的function.php文件中即可。如果外觀主題不含此文件,請自行創建一個。
6 E. O' ~) ~' i8 w- N- H8 F+ K/ K8 c
function check_referrer() {. I6 V+ B: s+ D; z+ K3 l2 f
if (!isset($_SERVER['HTTP_REFERER']) || $_SERVER['HTTP_REFERER'] == 「」) {
% |3 x, M: h" M6 v) N, k4 swp_die( __('Please enable referrers in your browser, or, if you\'re a spammer, bugger off!') );+ c1 Q8 p* U o
}
@3 |1 t+ b+ E, O}# h2 v" ~7 v# L% M
add_action('check_comment_flood', 'check_referrer'); |
|