web-dev-qa-db-ja.com

ユーザー登録時にパスワードを取得してデータベースに保存する

ユーザーがsha1暗号化パスワードを使用することによってそれのいくつかの機能にiphoneで接続できるウェブサイトに取り組んでいるim。言い換えれば、sha1で暗号化されたwordpressのプレーンパスワードです。

過去に私はユーザーがwp_usersテーブルのsha1にそのパスワードを登録して保存したときにパスワードを取得するためにwordpressのコアファイルを編集する愚かなことをしました。

もちろん、私のクライアントはワードプレスを更新しました、そしてすべての機能は失われました。ええイムばか、私はその日何を考えていたのかわからない。

私のテーマのfunctions.phpファイルからパスワードを取得し、それをsha1フォーマットで暗号化し、データベースに保存するためにregister関数にフックする方法はありますか?

何か案は?

2
chifliiiii

/wp-includes/pluggable.phpプラグイン可能関数 をご覧ください。あなたは安全にあなた自身のものでパスワード生成/チェック機能を置き換えることができます。

2
Milo

あなたは wp_check_password() にフックすることができます。

return apply_filters('check_password', $check, $password, $hash, $user_id);

$checktrueの場合、$password$user_idの現在有効なパスです。

これは次回の特定のユーザーログインでのみ機能することに注意してください。すべてのアカウントの計画テキストパスワードを単に取得することはできません。

1
Rarst