ユーザー名、パスワードを記憶していたアプリの障害で消えていた、久しぶりのログインでユーザー名、パスワードを忘れている、ワードプレスのパスワードリセットには、ユーザー名、またはメールアドレスが必要になりますよね。ユーザー名、メールアドレスも覚えていない・・・、大丈夫です。phpMyAdminで解決できます。phpMyAdminが使えないサーバーですか?大丈夫です。これからご紹介するアップロードする方法でユーザー名、メールアドレス、パスワードリセットでワードプレスのユーザー名、パスワードを忘れたを解決できます。
これからご紹介する方法は、ご自身のサイトにファイルをアップロード、http/httpsでアクセスしてユーザー名を表示されたり、パスワードをリセットします。ご紹介しているのはソースコードのみです。ソースコードをコピペしてワードプレスが動いているディレクトリに配置する必要があります。
ワードプレスのユーザー名、メールアドレスがわからないを解決するアップロードファイル
ワードプレスのユーザー名、メールアドレスは、MySQLデータベース(wp_users)に保存されています。これからご紹介するPHPソースコードをwp-config.phpと同じディレクトリに配置してください。配置し、http/httpsでアクセスし、知りたいことがわかったら配置したファイルを削除することを忘れないでくださいね。
<?php
require_once( __DIR__ . "/wp-config.php");
$wusers = $wpdb->get_results('select * from wp_users;');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Page Title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
<h2>wp_usersを詳しくみる</h2>
<p>ワードプレスのユーザーテーブルの情報を表示します。</p>
<form action="./rescue-show-users.php" method="post">
<select name="user_id"><?php
foreach( $wusers as $data ){
echo <<< EOM
<option value="{$data->ID}">{$data->userlogin}({$data->display_name})</option>
EOM;
} ?></select><button name="show_userinfo">ユーザ情報表示</button></form>
<?php
if(isset($_POST['show_userinfo'] ) ){
$target = false;
foreach($wusers as $data){
if( $data->ID == $_POST['user_id'] ){
$target = $data;
}
}
if( $target ){
ob_start();
print_r($target);
$contents = ob_get_contents();
ob_end_clean();
echo "<p>{$contents}</p>";
}else{
echo "<p>失敗です</p>";
}
}
?>
</body>
</html>
このPHPのファイル名は、rescue-show-users.phpです。ファイル名を自分のお好みに変えることができます。そその際は、ソース中のformの太字の部分も合わせて変更してください。
【ポイント】
- ポイント1 データベースのホスト名、パスワード、全て不要。設定済みのwp-config.phpを利用しています。
- ポイント2 wp_usersテーブルの内容をコンボボックスから選んで「ユーザ情報表示」ボタンで表示できます
- ポイント3 選択したユーザーの情報を全て出力しています。
やっていることわからなくても、ソースコード全部見れますよね。安心してください。
【出力例】
以下のような出力で確認できます。ユーザー名は、user_login、メールアドレスは、user_emailをそれぞれ確認することでわかります。
stdClass Object ( [ID] => 1 [user_login] => user_login
[user_pass] => user_pass
[user_nicename] => user_nicename
[user_email] => user_email@example.com
[user_url] => [user_registered] => yyyy-mm-dd hh:mm:ss
[user_activation_key] =>
[user_status] => 0
[display_name] => display_name )
(見やすいように改行しています)
PHPソースコードをwp-config.phpと同じディレクトリに配置することでユーザー名、メールアドレスが確認できるようになります。
ワードプレスのパスワードがわからないを解決するアップロードファイル
ワードプレスのパスワードをPHPからリセットすることができます。ただリセット自体は、ワードプレスの機能にもともとある方法(/wp-login.php?action=lostpassword)を使った方が良いかと思います。ユーザー名もしくはメールアドレスがわかればパスワードをリセットすることができます。
先にご紹介したワードプレスのユーザー名、メールアドレスがわからないを解決するアップロードファイルでユーザー名、メールアドレスがわかります。
=>ユーザー名、メールアドレスがわかればパスワードはリセットできます。
登録されているメールアドレスが解約済みだったり、使えなくなっている場合は、ワードプレスのユーザー名、メールアドレスがわからないを解決するアップロードファイルでIDを調べた上で以下ファイルをアップロード、アクセスすることで変更できます。
以下の例の太文字の部分がIDです。
stdClass Object ( [ID] => 1 [user_login] =>・・・)
太字のWP_USERSの変更したいID、新しいメールアドレスの部分をご自身の環境に合わせて書き換えてください。
<?php
define('WP_USERSの変更したいID', 1);
define('新しいメールアドレス','user@example.com');
require_once( __DIR__ . "/wp-config.php");
$wusers = $wpdb->get_row("select ID, user_login,user_email from wp_users where ID=" . WP_USERSの変更したいID);
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Page Title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
<h2>確認</h2>
<p><?php
if( count($wusers) == 0 ){
echo "<b>指定したIDに誤りがあります。更新できません。IDを見直してください</b>";
}
else if( strlen(trim(新しいメールアドレス)) <= 3){
echo "<b>新しいメールアドレス間違えていませんか?見直してください。</b>";
}
else if( isset($_POST['update']) == false ) {
echo "ID={$wusers->ID} (ユーザー名:{$wusers->user_login})<br><b>現在登録されているe-mailアドレス:{$wusers->user_email}</b><br><br><b>変更後のe-mailアドレス:".新しいメールアドレス ."</b><br>変更後のe-mailアドレスに変更します。「更新」ボタンをクリックで変更します。";
?>
<form action="./rescue-email-change.php" method="post"><button sytle="font-size:x-large" name="update">更新</button><form>
<?php
} else {
$ret = $wpdb->update('wp_users', array('user_email'=>新しいメールアドレス), array('ID'=>WP_USERSの変更したいID ), array('%s'), array('%d') );
if( $ret == false ){
echo '<b style="color:red">データベース更新に失敗しました。</b>';
}else{
echo "更新しました。";
}
echo "<br>現在データベースに登録されているメールアドレス<br>";
$wusers = $wpdb->get_row("select ID, user_login,user_email from wp_users where ID=" . WP_USERSの変更したいID);
print_r( $wusers );
}
?>
</p>
</body>
</html>
このPHPのファイル名は、rescue-email-change.phpです。ファイル名を自分のお好みに変えることができます。そその際は、ソース中のformのaction部分も合わせて変更してください。
【ポイント】
- ポイント1 確認画面を表示します。「更新」ボタンをクリックすることで更新します。
- ポイント2 データベースのホスト名、パスワード、全て不要。設定済みのwp-config.phpを利用しています。
- ポイント3 現在のemailアドレスも合わせて表示します。必要ならコピペしてどこかに記録しておいてください。
まとめ
いかがでしたでしょうか。phpMyAdminが使えないサーバーで、パスワードをを忘れても、この方法でワードプレスにログインできます。
- 初期費用0円(2022年8月4日に撤廃)
- 安定したサイト運営が可能(CPU/メモリ リソース保証 6コア/8GB〜)
- 契約中は独自ドメインつき 独自ドメイン永久無料特典があります
- 最大10日間無料で、サーバーのお試し利用ができます
- ディスクキャッシュも高速 NVMe SSDを採用(300GB〜)
- 大量アクセスでも安心 転送量は無制限
【このカテゴリーの最新記事】
-
no image
-
no image
-
no image
-
no image