7. 如無Referrer請求則禁止發表評論; {8 w5 D& c; E) s+ A
1 Y! s+ X% b# _( p. L w* i( K問題:垃圾評論是讓所有博主都頭疼的問題。儘管Akismet能夠幫你應付這些問題,但如果能化被動為主動豈不是更好?以下給出的代碼在wp-comments-post.php被訪問時,會查找referrer(即URL來源頁面)。如果此時存在一個referrer,且為你Blog的URL,那麼就可以發表評論。反之,頁面將會停止載入,而評論也就無法發表了。. V. Y& {& h0 M5 H. a: T
, T1 H, ~$ I5 z3 |解決方案:要應用此hack的話,直接將以下代碼粘貼到外觀主題的function.php文件中即可。如果外觀主題不含此文件,請自行創建一個。+ L5 E7 m5 v/ r; A7 K) {) ?
- I$ X# q; E# ~9 a5 C
function check_referrer() {
% c1 z, \* `, p' }1 U$ v( Y! oif (!isset($_SERVER['HTTP_REFERER']) || $_SERVER['HTTP_REFERER'] == 「」) {& z# N: j8 }' \# _% j, L! D
wp_die( __('Please enable referrers in your browser, or, if you\'re a spammer, bugger off!') );) V5 }3 D h% S% j$ h
}
( l2 n D7 F* G* x+ |}6 x. [# E: r( p& q0 r
add_action('check_comment_flood', 'check_referrer'); |
|