1. 程式人生 > >為wordpress後臺登陸新增算術驗證碼

為wordpress後臺登陸新增算術驗證碼

對於新建站(個人部落格-檸檬https://ninmong.com)的站長來說提高後臺的安全性,是一件非常重要的事,新增驗證可以起到很好的效果,廢話少說,貼程式碼

//後臺登陸數學驗證碼
function rhymo_add_login_fields() {
  //獲取兩個隨機數, 範圍0~9
  $num1=rand(0,9);
  $num2=rand(0,9);
  //最終網頁中的具體內容
      echo "<p><label for='math' class='small'>驗證碼</label><br /> <input type='text' name='sum' placeholder='$num1 + $num2 = ?' class='input' value='' size='25' tabindex='4'>"
  ."<input type='hidden' name='num1' value='$num1'>"
  ."<input type='hidden' name='num2' value='$num2'></p>";
}
add_action('login_form','rhymo_add_login_fields');
function login_val() {
  $sum=$_POST['sum'];//使用者提交的計算結果
  switch($sum){
    //得到正確的計算結果則直接跳出
    case $_POST['num1']+$_POST['num2']:break;
    //未填寫結果時的錯誤訊息
    case null:wp_die('錯誤: 請輸入驗證碼.');break;
    //計算錯誤時的錯誤訊息
    default:wp_die('錯誤: 驗證碼錯誤,請重試.');
  }
}
add_action('login_form_login','login_val');

效果如下圖