WordPressで強制的にFTP経由で管理者権限のログインユーザー情報を追加する方法

At HanamiWEB Online School,

●Ask questions in real-time in the virtual study room!

●Ask as many questions as you want via chat!

●E-learning materials that you can learn as much as you want, 24 hours a day!

All included for just 2,500 yen/month!

WordPressを更新したら、突然登録しているパスワードで入れなくなってしまう不具合が発生しました。
また、管理者メールアドレスもわからなくなってしまい、パスワードリセットが行えないというハプニングが発生

サーバーのファイルマネージャーを経由して、強制的にユーザー情報を追加してログインに成功したので、やり方を記録しておきます。

また、こんなに簡単にユーザー情報が追加できてしまうので、ちょっと怖いなと思いました。

FTP経由でWordPressユーザー情報を追加する全体の流れ

  1. ファイルマネージャーにアクセス
  2. テーマファイル内のheader.phpを探す
  3. ユーザー情報追加コードを追加
  4. ログインが出来たら、パスワードを再設定
  5. header.phpの記述を元に戻す

こんな流れになっています。
ファイルマネージャーを介して、WordPressのユーザーログイン情報を強制的に生成します!
それでは、xserverを事例に順番に詳しく解説をしていきますね。

ファイルマネージャーにアクセス

まずは、ファイル経由でwordpressユーザーを強制的に追加する手順の第一歩です。
サーバーにログインをすると、「ファイルマネージャー」という項目がありますので、クリックをしてファイル情報にアクセスをします。
FTP操作が出来る方は、FTP経由で構いません!

テーマファイルへ移動

対象のドメインのWordPressが入っている階層へ移動します。
その中の、【wp-content】フォルダに入ってください

テーマファイルのheadre.phpに追記することで、wordpressユーザー情報を強制的に追加する事が出来ます。

【themes】というフォルダ内にインストール済テーマファイルが入っていますので、この中に入っていきます。

 有効化しているテーマのフォルダに入ります

この中に、【header.php】ファイルが入っています

header.phpファイルを選択して、【ダウンロード】をクリックしてください。
パソコンにダウンロードをして、修正する前のバックアップファイルを保存しておきます。

ユーザー情報追加コードをheader.phpに挿入

 それでは、いよいよwordpressのユーザー情報を追加していく作業に入ります。

ダウンロードが出来たら、次は【編集】をクリックして、編集画面を開きます。

一番最上部に
<?php
?>
という項目がありますので、この中に追記します。
ない場合は、自分で追加をしてください。

追加するコードは以下です。

$user_login : 任意のログインIDを設定
$user_pass : 任意のログインパスワードを設定
$user_email : 任意のメールアドレスを設定(架空でも構いません)
$role : ユーザー権限を設定します。必ず管理者である 'administrator' を設定してください。

それ以下のコードは、おまじないのようなものなので、そのまま使ってください。

    // ログインユーザー情報設定
    $user_login = 'admin'; // ログインID
    $user_pass = 'pass'; // ログインパスワード
    $user_email = 'test@test.com'; // メールアドレス
    $role = 'administrator'; // 管理者権限

    // ユーザーの登録
    if (!username_exists($user_login)) {
        $data = array(
            'user_login' => $user_login,
            'user_pass' => $user_pass,
            'user_email' => $user_email,
            'role' => $role
        );
        wp_insert_user($data);
    }

<?php ?>こちらの記述がなかった方は、最上部に以下のコードを追加してください。

  <?php
    // ログインユーザー情報設定
    $user_login = 'admin'; // ログインID
    $user_pass = 'pass'; // ログインパスワード
    $user_email = 'test@test.com'; // メールアドレス
    $role = 'administrator'; // 管理者権限

    // ユーザー登録
    if (!username_exists($user_login)) {
        $data = array(
            'user_login' => $user_login,
            'user_pass' => $user_pass,
            'user_email' => $user_email,
            'role' => $role
        );
        wp_insert_user($data);
    }
?>

実際に追記したスクリーンショットはこちらです!

ログインをしてみる

wordpressテーマファイル内のheader.phpにユーザー情報追加コードが追加出来たら、作成したユーザー情報でログインをしてください。
ログインが出来たら、ユーザー情報一覧へ移動をして、パスワードを再設定します。

パスワードを変更

新しく作ったwordpressユーザーではなく、元々あったwordpressユーザーの編集画面を開き、パスワードを再設定します。
パスワードを再設定した後は、ログアウトして、元々のwordpressユーザーでログインが出来るか確かめて下さい。

ログインが出来たら、追加したwordpressユーザー情報はすぐに削除します。
ログインしているwordpressユーザーで自分の事は削除できないので、必ず元のwordpressユーザーでログインをした後に、新しく作ったwordpressユーザーの【削除】を行ってください。

header.phpを元に戻す

最後に、wordrpressテーマファイル内のheadre.phpを元に戻します。
①追記した個所を削除
②PCに保存していたheader.phpをアップロードして上書
どちらの方法でも大丈夫です!

summary

こんなに簡単にユーザー情報が追加出来るので、ファイルマネージャーにアクセスをされたら、wordpressのログインが誰でも簡単にできてしまうという事ですね。とても恐ろしいです。

今回、子テーマを作成しているwordpressサイトだったので、親テーマからheader.phpをダウンロードしてきて、子テーマの階層にアップロード。
wordrpessユーザー情報追加コードを子テーマ内のheader.phpファイルに追記をして、無事にログインが出来た後は子テーマ内に追加したheader.phpファイルを削除するという対応方法を取りました。

wordpressの
「ログインIDがわからない」
「登録メールアドレスがわからない}
結構問い合わせが多いので、参考にしていただければと思います!

Leave the reskilling of your website to us!

Since 2019, we have been sharing skills related to WordPress and websites. We have accumulated case studies and know-how, and are good at quickly and accurately solving problems. If you have any concerns about your website, please feel free to contact us via our official LINE account!

↑Click to open the official LINE page

Latest Articles

WordPressで強制的にFTP経由で管理者権限のログインユーザー情報を追加する方法
PayPay payments are now available with Stripe!
Credit installment payments now available with Stripe!
Stripe says "We need to take action to make 3D Secure mandatory." How do I take action on WordPress?
WP Rocket - WordPress Caching Plugin
en_USEnglish