* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *1011* 1018 * 101 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *1017* * * * * *оригинальный код, но, как я уже сказал, ни один из них не включает информацию о пользователе, и ни один из них не написан на старой странице входа.Я попытался инициализировать сеанс с: $wp_session = WP_Session::get_instance();
, который не работал, поэтому я попытался с
$wp_session = WP_Session_Tokens::get_instance();
Ничего не сработало.
Это весь мой процесс входа в систему.Не против помнить флажок, так как я тестировал разные вещи.
<?php
global $wpdb;
require_once('./wp-load.php');
get_header();
$wp_session = WP_Session_Tokens::get_instance(1);
?>
<?php
if (!isset($wp_session)) {
if (isset($_POST['user']) && $_POST['user'] != "" && isset($_POST['password']) && $_POST['password'] != "" )
{
$user = $_POST['user'];
$pass = $_POST['password'];
$remember = $_POST['mantenerSesion'];
$query = "SELECT * FROM wp_users WHERE user_login = '".$user."'";
$result = $wpdb->get_results($query, OBJECT);
$user_password = $result[0]->user_pass;
$user_login = $result[0]->user_login;
$user_id = $result[0]->ID;
$user_email = $result[0]->user_email;
$login_ok = wp_check_password($pass, $user_password, $user_id);
if ($login_ok) {
$wp_session['user_email'] = $user_email;
$wp_session['user_id'] = $user_id;
$wp_session['user_login'] = $user_login;
$wp_session['user_password'] = $user_password;
if (isset($remember) && $remember != "") {
$wp_session['remember'] = $remember;
$sign_on = wp_signon($wp_session, false);
}else{
$sign_on = wp_signon($wp_session, false);
}
if (is_wp_error($sign_on)) {
echo $sign_on->get_error_message();
} else{
header('Location: https://localhost/reclamador');
}
} else{
echo "Tu correo y contraseña no coinciden";
header('Location: https://localhost/reclamador/login.php?error');
}
} else
{
echo "Debe rellenar todos los campos del formulario";
}
}elseif (isset($wp_session) && !empty($wp_session)) {
header('Location: https://localhost/reclamador/');
}
?>
Мне просто нужно знать способ соединения с wp sessión, поэтому, когда пользователь входит в систему, он может получить доступ ко всем функциям Интернета.Ребята, еще раз спасибо за помощь!
ОБНОВЛЕНИЕ
Я только что обнаружил, что файл cookie, содержащий информацию, называется wordpress_loged_in__b13ff0431856f9aa64c4651e81fb25ae, и я нашел его внутри кода.Страница, содержащая его, является class-freemius.php, и это единственное, что с ней связано:
if ( ! defined( 'LOGGED_IN_COOKIE' ) ) {
define( 'LOGGED_IN_COOKIE', 'wordpress_logged_in_' . COOKIEHASH );
}
Как старый логин хранил здесь информацию?Как мне сделать то же самое?