この記事は最後に更新してから1年以上経過しています。
説明
日本時間の今朝「WordPress 5.7 Beta 3(以降Beta 3)」が予定通り公開されました。今回は、ソースコードを眺めていた時に気になったパスワードを取得できるAJAXについて確認した。
はじめに、この記事は公開された5.7 Beta 3をもとにしており、正式リリースの際に変更される可能性があることを予めお断りする。
ログイン時は無効
まずは実際に新しく追加されたAJAXをのURLにアクセスしてみる。
http://localhost/wp-admin/admin-ajax.php?action=generate-password
アクセスしたユーザーがログインしていない場合は、次のようなJSONデータがレスポンスとして返ってくる。
{"success":true,"data":"C*FsS525pBj5uB0bTh1TuZkx"}
dataプロパティの内容がパスワードであり、英数記号による24字のパスワードがランダムに生成されている。
このパスワードを取得できるAJAXは次のように登録されており、ユーザーがログインされていない場合のみ機能するようになっている。
add_action( 'wp_ajax_nopriv_generate-password', 'wp_ajax_nopriv_generate_password' );
今度はログインした後にさきほどのAJAXのURLにアクセスする。今回のレスポンスは 0
となり、パスワードのJSONデータは返ってこない。
このAJAXはどこで使う?
さて、パスワードを取得できるAJAXだが、パスワードリセット時に新しいパスワードを設定する画面で使用されている。tracで関連トピックを探してみると、4年以上前に提案された「Reset Password Page UX」にもとづいて「Generate Password」ボタンが追加され、そのボタンが押されると新しいパスワードを取得する仕組みが導入されている。
個人的には普段ほとんど見ることがない画面だが、5.7ではこんなところも改良されているんですね。
最終更新 : 2021年02月17日 11:48
お勧め
add_shortcode(2018年5月27日 更新)
get_user_setting(2022年1月31日 更新)
have_posts(2018年5月27日 更新)
in_category(2018年5月27日 更新)
add_feed(2024年6月24日 更新)