Я знаю, что первый позволяет добавлять дополнительные параметры, поэтому вы можете получить больше информации о пользователе, но другие тогда, почему оба существуют?
Конкретная причина, по которой я хочу знать, это то, что wp_insert_user () происходит ДЕЙСТВИТЕЛЬНО медленно. Где-то между 5 – 10 секундами. Я не помню, чтобы иметь эту проблему в прошлом, когда я использовал create_user, поэтому мне интересно, есть ли что-то еще за кулисами с одним, а не с другим.
Благодарю.
Никто. Весь источник wp_create_user()
:
function wp_create_user($username, $password, $email = '') { $user_login = esc_sql( $username ); $user_email = esc_sql( $email ); $user_pass = $password; $userdata = compact('user_login', 'user_email', 'user_pass'); return wp_insert_user($userdata); }
Он просто вызывает версию вставки почти сразу, в основном сокращенную оболочку. Что касается того, почему он существует – ядро работает таинственным образом и (не дожидаясь поиска разработчика по истории управления версиями и спрашивая), редко можно сказать. 🙂
Согласно Кодексу
Функция wp_create_user позволяет вставить нового пользователя в базу данных WordPress. Он использует класс $ wpdb для исключения значений переменных, готовя их для вставки в базу данных. Затем функция PHP compact () используется для создания массива с этими значениями. Чтобы создать пользователя с дополнительными параметрами, используйте wp_insert_user ().
Поэтому основное отличие заключается в том, что с помощью wp_insert_user
вы можете передать больше, чем просто ($username, $password, $email)
. Полный список всех дополнительных параметров для wp_insert_user можно найти на его странице Codex