web-dev-qa-db-ja.com

Wp_insert_user()とwp_create_user()の違いは何ですか

私は前者が追加のパラメータを許可することを知っているので、あなたはより多くのユーザ情報を作成することができますが、それ以外に、なぜ両方が存在するのですか?

私が知りたいと思う具体的な理由は、wp_insert_user()が本当にゆっくり起こっているということです。 5から10秒の間のどこか。私がcreate_userを使用していたときに、過去にこの問題を抱えていたことを覚えていません。

ありがとう。

2
emersonthis

無し。 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);
}

それはただちに insert versionを呼び出すだけです。それが存在する理由について - コアは不可解な方法で働いています、そして(バージョン管理の歴史によって開発者を追い詰めて尋ねることを除けば)伝える方法はめったにありません。 :)

8
Rarst

コーデックスに従って

Wp_create_user関数を使用すると、WordPressデータベースに新しいユーザーを挿入できます。これは$ wpdbクラスを使用して変数値をエスケープし、データベースへの挿入の準備をします。その後、PHP compact()関数を使用してこれらの値を持つ配列を作成します。追加のパラメーターを使用してユーザーを作成するには、wp_insert_user()を使用してください。

したがって、主な違いは、wp_insert_userを使用すると、単なる($username, $password, $email)以上のものを渡すことができるということです。 wp_insert_userのすべての追加パラメーターの完全なリストは、その Codexページにあります

3
e4rthdog