WordPress の管理者パスワードを忘れたときの対応方法

前任者から WordPress のサイト運用を引き継いだが引継ぎ資料に書かれたパスワードでは管理者としてログインできなかったので、 WP-CLI でログインパスワードをリカバリーしてみた。

WP-CLI がインストールされていない場合は、先に WP-CLI をインストールする †

1
2
3
4
$ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
$ php wp-cli.phar --info
$ chmod +x wp-cli.phar
$ mv wp-cli.phar /usr/local/bin/wp

ユーザーの一覧を表示し、管理者のメールアドレスを確認する

1
2
3
4
5
6
7
8
# wp --allow-root user list
+----+------------+--------------+--------------+--------------+---------------+
| ID | user_login | display_name | user_email | user_registe | roles |
| | | | | red | |
+----+------------+--------------+--------------+--------------+---------------+
| 1 | user | user | foo@example. | 2020-07-21 0 | administrator |
| | | | com | 2:45:50 | |
+----+------------+--------------+--------------+--------------+---------------+

確認したメールアドレスでユーザーを指定してパスワードを変更する。

1
2
3
# wp --allow-root user update foo@example.com --user_pass=PASSWORD
sh: 1: /usr/sbin/sendmail: not found
Success: Updated user 1.

おそらく、パスワードを変更したことを連絡先メールアドレスに発報しているが、sendmail を入れていないので、エラーになっているが、パスワードは変更されている。