ログインできない場合

WordPress の管理画面へログインできない場合は、以下の解決方法を試してみてください。

ブラウザの Cookie が有効になっていることを確認するために、以下が必要になります。

  1. ブラウザの Cookie を削除してみてください。
  2. ブラウザのキャッシュをクリアしてみてください。

各種ブラウザでの Cookie とキャッシュの削除方法を知るには、キャッシュと Cookie のクリアページをご覧ください。

トップ ↑

WordPress マルチサイトネットワーク

wp-config.php ファイルを開き、DOMAIN_CURRENT_SITE の値が正しいかどうか確認してください。

トップ ↑

プラグインの無効化

ログインの際に邪魔をしているプラグインがあるかもしれません。すべてのプラグインを無効化してみましょう。 管理画面から行うか、 /wp-content/plugins/ フォルダから問題があるかもしれないプラグインを移動してみてください。

または、プラグインフォルダ名を /wp-content/pluginsXX/ などのように変更しても良いでしょう。これで、プラグインが認識されなくなります。問題が解決した後、このフォルダは /wp-content/plugins/ に改名し直してください。

トップ ↑

テーマの無効化

  • FTPを使って有効化されているテーマのフォルダ(wp-content/themes内)名を変更します。変更すると、 WordPress は WordPress Twenty Seventeen テーマ にテーマを戻します。ログインできたら、別のテーマに変更してください。
  • テーマ内の問題がどこにあるのかを探すには、テーマが有効化されている際にこのコードを実行してみてください。
<?php ini_set('display_errors','1'); ini_set('display_startup_errors','1'); error_reporting (E_ALL);include('index.php'); ?>

トップ ↑

ログイン画面用ファイルの新規作成

wp-login.php ファイルが壊れていたり、アップロードに失敗している場合もあります。

  • サーバから wp-login.php ファイルを削除し、新規ダウンロードした WordPress から再アップロードします。FTP ツールを使って上書きしただけの場合は転送が完了しないことがありますので注意しましょう。
  • wp-login.php を以下のように編集します。
    • case retrievepassword セクションで、以下のコメントを見つけます。
// redefining user_login ensures we return the right case in the email

以下の部分を、

$user_login = $user_data["user_login"];

このように書き換えます。

$user_login = $user_data->user_login;

トップ ↑

Users テーブルの編集

phpMyAdmin にアクセスし、注意深くデータベースを編集します。

  • WordPress が使っているデータベースを開きます。
  • 左側のメニューから users テーブルを開きます(デフォルトは wp_users です。テーブル接頭辞を変更した場合は yourprefix_users になります)。
  • 表示 をクリックします。
  • “admin” ユーザーの行にある編集アイコン(鉛筆マーク)をクリックします。
  • “user_pass” の行で、”関数” プルダウンから “MD5” を選択します。書かれた値を削除し、新しいパスワードを半角英数字で入力します。
  • 保存を実行します。
  • ユーザー名 “admin” と、先ほど作成したパスワードでログインします。

新しいバージョンの WordPress では、パスワードが二重ハッシュ処理されています。ただし、MD5 でハッシュしておけば、WordPress が自動的にパスワードをアップグレードしてくれるので心配はいりません。

トップ ↑

パスワード関連の問題

パスワードが間違っている場合や、パスワードをなくしてしまった場合は、ログインパスワードを変更・再発行するをご覧ください。

ユーザ名とパスワード欄では、大文字と小文字が別のものとして判断されますので注意しましょう。

トップ ↑

サイト URL リダイレクト

WordPress のアドレス URL が何らかの理由でリセットされてしまっている場合があります。

  • PHPMyAdmin などで WordPress データベースの wp-options テーブルの siteurl の値を確認しましょう(サイト URL の変更についての説明ページ・英語)
  • http:// になっていますか?
  • その場合は、siteurl を正しい値に修正します。
  • wp-login.php ファイルをテキストエディタで開き、以下の行を削除します。
// WordPress が移動された場合はどこにあるか検出
//if ( dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']) != get_settings('siteurl') )
 // update_option('siteurl', dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']) );

WordPress アドレスの URL を変更してしまったためにログインやデータベースへのアクセスができなくなった場合で、管理画面にはまだアクセス出来る場合は wp-login.php を使ってアドレスを変更できます。

//FIXME: データベースを変更したら以下はコメントアウトまたは削除
update_option('siteurl', 'http://your.domain.name/the/path' );
update_option('home', 'http://your.domain.name/the/path' );

トップ ↑

サブドメインまたはサブディレクトリ

wp-login.php ファイルで、

define( 'SUBDOMAIN_INSTALL', true);

を以下に変更してみてください。

define( 'SUBDOMAIN_INSTALL', false);

トップ ↑

セキュア HTTPS

セキュア HTTPS サイトで問題が発生している場合、wp-includes/vars.php で以下の部分を見つけます。

define('COOKIEPATH', preg_replace('|http://[^/]+|i', '', get_settings('home') . '/' ) );

これを、以下のように書き直します。

define('COOKIEPATH', preg_replace('|https?://[^/]+|i', '', get_settings('home') . '/' ) );

一般設定ページで URL を https:// にするのもお忘れなく。

トップ ↑

“Headers Already Sent” エラーの解決

headers already sent というエラーメッセージが出る場合は、FAQ“Headers Already Being Sent” 問題の解決をご覧ください。

トップ ↑

URL 設定の確認

ドメイン内ではブログを見られても、外から見られないという場合があります。この場合、上記の#テーブルの編集を行ってもログインできないかもしれません。

もしそうなってしまったら、wp-options テーブルの siteurl (WordPress のアドレス (URL)) と home (ブログのアドレス (URL)) の値を再確認し、ベースが同一の利用できるアドレスであることを検証しましょう。例えば、http://blog.sample.com などです。標準インストールでは、http://servername のようなローカルホスト(内部ホスト)名になっているかもしれません。

もうひとつ考えられる問題は、wp-options テーブルの siteurl(WordPress アドレス URL)と home(ブログアドレス URL)が www なしの URL に設定されているにもかかわらず、www なしの URL から www ありの URL へ .htaccess を使ってリダイレクトをしようとしている場合です。結果的に無限ループが作成されてしまいますが、これを防ぐ必要があります。解決方法の1つとして、.htaccess のリダイレクトを一時的に無効にすることです。リダイレクトの部分の行頭に # を書くか、その部分を削除して再度ログインしてみてください。上級ユーザーの方は、wp-options テーブルの siteurl(WordPress アドレス URL)と home(ブログアドレス URL)をデータベースから更新してみるとよいでしょう。

トップ ↑

ファイアウォールの確認

ファイアウォールには WordPress へのログインをブロックするものがあります(例: eTrust パーソナルファイアウォール)。ファイアウォールを無効にして再度試してみてください。

トップ ↑

それでもうまくいかない時は

それでも問題が解決しない場合は、WordPress サポートフォーラムに投稿してみましょう。その際、以下の内容を含めてください。

  • このページの方法を可能な限りすべて試したことの表明
  • サーバ設定の詳細(MySQL と PHP のバージョン他)
  • パソコンのオペレーションシステム / OS(Windows、Mac、Linux など)
  • 使っているブラウザ
  • 問題が発生している WordPress のバージョン

この記事は役に立ちましたか ? どうすればさらに改善できますか ?