WordPress Spam Register

ขึ้นชื่อว่า Spam ใคร ๆ ก็ไม่อยากจะเจอ WordPress Spam Register ผมเองก็เคยเจอปัญหานี้มาและมีวิธีป้องกันอยู่ 2 วิธีเลยเอามาเขียนไว้สักหน่อยเผื่อใครที่เจอปัญหาเดียวกันนี้จะได้นำไปใช้ได้ด้วย คำถามจากสมาชิกในกรุ๊ป WordPress เค้าถามมาว่า

โดน bot register รัว ๆ เลยครับ แก้ไงดี

วิธีที่ 1. เพิ่ม code ชุดนี้เข้าไปใน function.php

add_filter( 'pre_user_email', 'allow_email_signups' );
function allow_email_signups( $user_email ) {
    $allow_domain = array( 'hotmail.com', 'gmail.com', 'yahoo.com', 'hotmail.co.th', 'yahoo.co.th' );

    // Get visitor email domain
    $email = explode( '@', $user_email );

    // Check and display error message for the registration form if exists
    if( !in_array( strtolower( $email[1] ) , $allow_domain ) ) {
        wp_die(__('Sorry, you are not allowed to create resources.', 'woocommerce'));
    }
    return $user_email;
}

อธิบายการทำงานของ Code ชุดนี้ อีเมลที่จะสมัครสมาชิกได้ต้องเป็นอีเมลที่ลงท้ายด้วยโดเมน 3 โดเมนนี้เท่านั้น คือ

  • Gmail
  • Hotmail
  • Yahoo

ถ้าต้องการมากกว่านี้ก็เพิ่มโดเมนที่เราต้องการเข้าไปในตัวแปร $allow_domain ได้เลยครับ แต่วิธีนี้อาจจะกันสแปมไม่ได้ 100% นะครับ เหมาะสำหรับใครที่ไม่ชอบใช้ปลั๊กอินเช่น คนเขียนอย่างผมเนี่ยแหละ

วิธีที่ 2. ใช้ปลั๊กอิน WordPress ReCaptcha Integration

ปลั๊กอินตัวนี้ใช้ Google ReCaptcha ในการกันสแปม เราสามารถเพิ่ม captcha เข้าไปที่หน้า signup, login, comment ของเราได้เลยสะดวกดีครับเหมาะกับคนที่ไม่ชอบวิธีแรก จริง ๆ แล้วผมก็ชอบนะ แต่บ้า Coding เท่านั้นเอง ไม่ค่อยชอบลงปลั๊กอินเยอะ ลองโหลดได้ที่ลิงค์นี้เลย Google Captcha (reCAPTCHA) by BestWebSoft

จบแล้ว

หากอ่านแล้วชอบบทความจาก CodingDee ก็ฝาก กดไลค์เพจ ด้วยนะครับ จะได้ไม่พลาดข่าวสารเทคนิคดี ๆ จากเรา หรือติดปัญหาตรงไหนก็คอมเมนต์ไว้ด้านล่างนี้ได้ ไว้พบกันบทความต่อไปครับ

โปรแกรมเมอร์คนหนึ่งที่อยากแชร์ประสบการณ์การทำงาน ปัญหาที่พบเจอและวิธีแก้ปัญหา มาร่วมแชร์ความรู้กันนะ