2015-01-08 6 views
2

Привет, Я пытаюсь провести поиск в реальном времени, который ищет существующие электронные письма, когда пользователь регистрируется. Ниже мой JQuery скриптWordpress получить пользователя от

$("#wjp_register input#user_email").change(function(){ 
    console.log("lol"); 
    var email=$("#wjp_register input#user_email").val(); 
     $.ajax({ 
      type:"post", 
      dataType : 'JSON', 
      url:"/wordpress/wp-content/themes/tsf/wpjobboard/job-board/check.php", 
      data:"email-address="+email, 
       success:function(result){ 
       if(result==0){ 
        console.log(result); 
        $(".error").html(" Username available"); 
       } 
       else{ 
        console.log(result); 
        $(".error").html("Username already taken"); 
        proceed = false; 
       } 
      } 
     }); 

}); 

Когда я проверить реакцию в консоли разработчика, электронная почта вторит успешно, но WordPress get_user_by не кажется, работает.

Мой PHP скрипт

<?php 
$mm = $_POST['email-address']; 

if (isset($_POST['email-address']) && ! empty($_POST['email-address'])) { 

    //sanitize the data 
    $email_addr = trim(strip_tags(stripslashes($_POST['email-address']))); 
    echo $email_addr;//This is printed successfullt 
    echo "<br>"; 

    //This below part doesnt work :(
    if(false == get_user_by('email', $email_addr)) { 
     echo "Doesnt exist"; 
    } else { 
     echo "exists"; 
    } 

} 
?> 
+0

'get_user_by' не возвращает boolean ... он возвращает объект пользователя. В документах показан пример: http://codex.wordpress.org/Function_Reference/get_user_by – Kinnectus

+1

@BigChris "объект или _false, если пользователя не найдено_" –

+0

Упс. Виноват. Сожалею! Помогло бы, если бы я прочитал документы к тому, что было возвращено ... возможно, вам нужно проверить, является ли ложь с '===', а не '=='? – Kinnectus

ответ

1

Так вот правильный способ использовать WP из внешнего файла:

Include WP-блог-header.php, если вам нужно все WP и хотят уволить все крючки и действия по умолчанию.

define('WP_USE_THEMES', false); 
require('./wp-blog-header.php'); 

Включите wp-load.php, если вам нужны только функции WP. Он не вызывает wp() или вызывает загрузчик шаблонов. Так что это легче!

define('WP_USE_THEMES', false); 
require('./wp-load.php'); 
+0

В чем разница, если вы используете wp-blog-header.php или wp-load.php? – Ash

+0

Я изменил свой комментарий. В вашем случае достаточно включить wp.load.php –

Смежные вопросы