Qual è la differenza tra wp_insert_user() e wp_create_user()
So che la prima permette parametri aggiuntivi, quindi puoi inserire più informazioni sull'utente, ma a parte questo, perché esistono entrambe?
Il motivo specifico per cui voglio saperlo è che wp_insert_user() sta impiegando MOLTO tempo. Circa tra i 5 e i 10 secondi. Non ricordo di aver avuto questo problema in passato, quando usavo create_user, quindi mi chiedo se ci sia molto più lavoro dietro le quinte con una rispetto all'altra.
Grazie.

Secondo il Codex
La funzione wp_create_user consente di inserire un nuovo utente nel database di WordPress. Utilizza la classe $wpdb per proteggere i valori delle variabili, preparandoli per l'inserimento nel database. Poi viene usata la funzione PHP compact() per creare un array con questi valori. Per creare un utente con parametri aggiuntivi, utilizza wp_insert_user().
Quindi la differenza principale è che con wp_insert_user
puoi passare più parametri oltre a ($username, $password, $email)
. Una lista completa di tutti i parametri aggiuntivi per wp_insert_user è disponibile nella sua pagina del Codex

Nessuna. L'intero codice sorgente di 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);
}
Chiama semplicemente la versione insert quasi immediatamente, sostanzialmente è un wrapper abbreviato. Per quanto riguarda il motivo per cui esiste - il core funziona in modi misteriosi e (a parte rintracciare lo sviluppatore tramite la cronologia del version control e chiederglielo) raramente c'è modo di saperlo. :)
