WordPressをお仕事でやっていると、わりと丸投げ感のある状態で渡されることがあります。よくあるパターンとしては「さくらインターネットとかから送られてくるサーバ設定情報のメールがそのまま送られてくる」という奴ですね。
僕はすぐ邪推する人間なので、こういうときは「前の人がバックレたか空中分解したかのどちらかだなー、やりたくないなー」と内心怯えつつ設定を確認していくのですが、まれにクライアントが管理画面へのアクセス権を持っていない上に、管理者のパスワードもメールアドレスもわからん、という状況があります。
こうなるとユーザーが作れなくて困ってしまうのですが、最悪FTPが使えればログインできるので、その方法を紹介します。
1. ログイン用スクリプトを作成
以下のような内容のファイルを作成します。
<?php require './wp-load.php'; // ユーザーID1としてログインさせる。 // 普通は管理者が1。違ったらphpMyAdminとかで調べてください。 wp_set_auth_cookie(1); //管理画面へリダイレクト wp_redirect(admin_url()); exit;
2. ログイン用スクリプトをアップロードしてアクセス
このファイルがサーバに上がっているということは、銀行に喩えるならば、暗証番号が付箋で貼付けられたキャッシュカードがATMに落ちているというぐらいヤバいです。
したがって、ログインしたらすぐに消さなくてはなりません。
今回はさらに万全を期して、486e78371abaf1019b0eec54fb0f9a2b.php
というmd5ハッシュ値のファイル名にしておきましょう。このご、次の手順を速やかに実行します。
486e78371abaf1019b0eec54fb0f9a2b.php
をアップロード- http://example.jp/486e78371abaf1019b0eec54fb0f9a2b.phpにアクセス
486e78371abaf1019b0eec54fb0f9a2b.php
を消す
はい、これでログインできたと思います。パスワードやメールアドレスを変更してください。
おまけ:セキュリティは慎重にね!
ここまでざっと見て気づいた方はいると思いますが、悪い人からすると、任意のファイルを配置できるWordPressサイトには自由にログインできちゃうことになります。
知らない人が好きなPHPファイルを配置できている段階で本来はアウトなので、気をつけましょう。
テーマ内にわけのわからないBase64コードが挿入されている方、エロサイトのリンクが出るぐらいでよかったですね。
[429] [429] Client error: `POST https://webservices.amazon.co.jp/paapi5/getitems` resulted in a `429 Too Many Requests` response: {"__type":"com.amazon.paapi5#TooManyRequestsException","Errors":[{"Code":"TooManyRequests","Message":"The request was de (truncated...)