wp_userテーブルにレコードを追加してやれば良さそう。
パスワードハッシュの生成はwp-includes/class-phpass.phpに定義されているPasswordHashというクラスで行っているようなので、これをコピーしてきて外部アプリから呼んでやれば良さそう。
というわけで、Laravelだとこんな感じ。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
require_once(app_path() . '/class-phpass.php'); // Add user. $phpass = new \PasswordHash(8, true); $user = new WpUser(); $user->user_login = $data['username']; $user->user_pass = $phpass->HashPassword($data['password']); $user->user_nicename = $data['username']; $user->user_email = $data['email']; $user->user_url = ''; $user->user_registered = Carbon::now(); $user->user_activation_key = ''; $user->user_status = 0; $user->display_name = $data['username']; $user->save(); |
参考サイト
【WordPress】wp_usersテーブルを流用してログイン機能を作る at softelメモ
https://www.softel.co.jp/blogs/tech/archives/3793