Где находится запрос в wp-login.php WORDPRESS - PullRequest
1 голос
/ 14 февраля 2012

Я делаю форму входа в WORDPRESS, и я хочу, чтобы на ней была проверка, поэтому я попытался посмотреть на wp-login.php, чтобы увидеть, как они проверяют вещи. Но я не нашел то, что я ищу. Я хотел бы знать, как они проверяют вещи или какой вклад им нужен для проверки вещей. Я пытался искать на форумах WordPress все, что я могу найти, это плагин, плагин и другие плагины. Я не хочу плагин. Я хочу жестко закодировать это. Поэтому, пожалуйста, помогите мне.

  1. Я хочу знать, где можно найти часть, которая ищет имя пользователя и пароль пользователя.
  2. Или, если нет, знать, что нужно для успешного входа в систему. пример имени пользователя или пароля или др.
Кстати,

это wp-login.php . Спасибо

Ответы [ 2 ]

4 голосов
/ 14 февраля 2012

Действительно, логика аутентификации не находится в wp-login.php.

Wordpress во многом полагается на хуки ( действия и фильтры ).Для аутентификации эта статья объясняет некоторые процессы в WordPress 2.8+.AFAIK это то же самое в 3.x.

Процесс аутентификации основан на фильтре authenticate.В очередь фильтра добавлено два перехвата:

  • wp_authenticate_username_password () (приоритет 20) в wp-includes/user.php (строка 68)

  • wp_authenticate_cookie () (приоритет 30) в wp-includes/user.php (строка 117)

Подробнее см. в статье.

Я призываю вас не взламывать ядро ​​напрямую, а добавить несколькоперехватывает этот фильтр с более высокими приоритетами.

0 голосов
/ 14 февраля 2012

Начните смотреть на строке 535:

case 'login' :
default:
        $secure_cookie = '';
        $interim_login = isset($_REQUEST['interim-login']);

Похоже, это функция входа в систему. В строке 630 вы получите что-то вроде HTML для формы входа в систему:

<form name="loginform" id="loginform" action="<?php echo esc_url( site_url( 'wp-login.php', 'login_post' ) ); ?>" method="post">
        <p>
                <label for="user_login"><?php _e('Username') ?><br />
                <input type="text" name="log" id="user_login" class="input" value="<?php echo esc_attr($user_login); ?>" size="20" tabindex="10" /></label>
        </p>

Внесите изменения и посмотрите, работает ли это.

...