開発
WordPressアカウントのユーザー名を変える
shimizu
WordPressを使っていて、アカウントのユーザー名を変更したいなと思うことがあります。「セキュリティ対策でデフォルトのままの管理者ユーザー名を変えよう」とか「もっとクールなユーザー名にするぜ」などという場面があるかもしれません。サイトに表示される名前やパスワードはプロフィール編集画面から簡単に変えることができますが、ユーザー名については「変更できません」と表示されているとおり、入力欄が読み取り専用になっており、変更できないと思ってしまいそうです。しかし、これを変更する方法がいくつかあります。今回は一番原始的な方法をご紹介します。
データベースの中身を直接書き換える
ユーザーアカウントの情報はMySQLデータベースに格納されていますので、そこを書き換えてしまいます。始めに、MySQLのコマンドラインにログインして現在の状況を見てみましょう。(テーブル名は環境によってプレフィックスが異なる可能性がありますので、適宜読み替えてください)
mysql> SELECT * FROM wp_users WHERE user_login='あなたのユーザー名'; +----+------------+-----------+---------------+------------------+----------+---------------------+---------------------+-------------+--------------+ | ID | user_login | user_pass | user_nicename | user_email | user_url | user_registered | user_activation_key | user_status | display_name | +----+------------+-----------+---------------+------------------+----------+---------------------+---------------------+-------------+--------------+ | 2 | author01 | ********* | author01 | [email protected] | | 2014-01-29 20:26:00 | | 0 | 投稿者01 | +----+------------+-----------+---------------+------------------+----------+---------------------+---------------------+-------------+--------------+ 1 row in set (0.00 sec)
そうすると上記のような結果が出ると思います。WordPressアカウントのユーザー名はwp_usersテーブルの「user_login」に入っていますので、これを書き換えてやります。
mysql> UPDATE wp_users set user_login='新しいユーザー名' WHERE user_login='変更前のユーザー名';
こうすることで、ユーザー名の変更が完了しました。ログアウトして再度ログインする際は、新しいユーザー名でログインできるはずです。
※注・この方法でユーザー名を変更すると、既存のシステムに副作用を及ぼす可能性がありますので、皆様の責任においてお試しくださいm(__)m