Привет. Я пытаюсь войти в систему с помощью функции Wordpress wp_signon (), но всегда получаю сообщение об ошибке, так как этот пароль не соответствует идентификатору. Есть другие подобные вопросы, но они не решили эту проблему. Я проверил все параметры, которые я передал, и они верны, и проверьте правильность данных с помощью базы данных. Я дал ниже мой код, пожалуйста, помогите мне.
if(array_key_exists('login_submit',$_POST))
{
$log = $_POST['log'];
$pwd = $_POST['pwd'];
//$rememberme = $_POST['rememberme'];
$login_array = array();
$login_array['user_login'] = $log;
$login_array['user_password'] = $pwd;
//$login_array['remember'] = $rememberme;
$verify_user = wp_signon($login_array, true);
if(!is_wp_error($verify_user))
{
echo "<script>alert('Help!')</script>";
$user = get_user_by( 'login', $log );
wp_setcookie($log, $pwd, true);
wp_set_current_user($user->ID, $log);
do_action('wp_login', $log);
if(in_array( 'Manager', (array) $user->roles))
{
$res = $wpdb->get_results("SELECT * FROM wp_candidate WHERE utilisateurCand='".$log."' AND passeCand='".$pwd."'");
wp_redirect('http://example.com.com/acces-au-dossier-de-candidature-manager/');
exit;
}
else if ( in_array( 'subscriber', (array) $user->roles ) )
{
$res = $wpdb->get_results("SELECT * FROM wp_candidate WHERE utilisateurCand='".$log."' AND passeCand='".$pwd."'");
echo$uid=$res[0]->user_id;
wp_redirect("http://example.com/candidature-application-file/?user_id=$uid");
exit;
}
else
{
echo $user->get_error_message();
exit;
}
}