Comprobación de valores de login en WordPress
Este script comprueba los valores de usuario y contraseña para un usuario de WordPress.
Recoje las variables user/pass por POST y comprueba mediante la función wp_signon si es login es correcto.
El script está pensado para utilizarlo «desde fuera» de WordPress, como un servicio propio por ejemplo al que llamar por AJAX.
En las lineas
1 2 |
define('WP_USE_THEMES', false); require('../../../../wp-load.php'); |
Cargamos el archivo wp-load para poder acceder a las funciones de WordPress desde nuestro servicio. La ruta ‘../../../../wp-load.php’ tendremos que modificarla en función de la localización del archivo (en este caso en una carpeta dentro del tema). El código completo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php header('Response: HTTP/1.1 200 OK'); define('WP_USE_THEMES', false); require('../../../../wp-load.php'); $user = $_POST['user']; $pass = $_POST['pass']; $creds = array(); $creds['user_login'] = $user; $creds['user_password'] = $pass; $creds['remember'] = true; $user = wp_signon( $creds, false ); if ( is_wp_error($user) ){ $output = json_encode(array('type'=>'error', 'text' => $user->get_error_message(), 'error' => 1)); }else{ $output = json_encode(array('type'=>'error', 'text' => '', 'error' => 0)); } echo $output; ?> |