AWS LightsailでWordPressのサイトを作った際のユーザー名 user の変更について

ユーザー名の user を変更したい場合のお話しですが、単純に wp_users の user_login を書き換えると、サイトネットワーク管理が権限無しになってしまうので、wp_sitemeta の meta_key = site_admins も書き換える必要があります。なお site_admins はシリアライズされてますのでご注意ください。

で、この時に wp_users の user_nicename、display_name および wp_usermeta の nickname なども普通は書き換えるのかもですが、最初のuser_loginとsite_adminsのみ書き換えることにより、?author=1 ってやった場合に表示されてしまう名前が user のままで、ログイン時に入力するユーザー名とは異なるものになることを今回始めて知りました。まぁ、どこかに露出してるかもしれませんが……

で、今日の本題ですが上記のユーザー名の変更を行うと、私の環境では別ドメイン(当ブログ)の管理画面にログインできなくなりました。

明確な解決方法は分かりませんが、クッキーを削除したり、wp-config.php に前回追加した定義を削除したり、ユーザー名を user に戻したり、また書き換えたりしてたら、いつの間にか新しいユーザー名でログインできるようになりました。

もしかしたら新規ユーザーを登録しても同じことが起きるかもしれませんので、情報として書いときます。


ユーザー名を変更する方法として、新しいユーザーを追加、権限を移譲してから、古い方を消すってのもありますがメールを送信できるように先に設定する必要があります。

ちなみに最後に古い方を消す際ですが、ユーザー名の下に表示される削除を押しても駄目で(何も起きません)、ユーザー名左側のチェックボックスにチェックを入れて、一括操作を削除にして適用だと消えました。(新しいユーザーでログインしとかないとチェックボックスは表示されません。)

今日はここまで。