移動作業車、Web製作、がんサバイバーとオストメイトの深く掘りさげた情報を紹介

ドットエイト机上研究所

WordPress アドレス (URL)/サイトアドレス (URL)を変更してログインできなくなった時の対応法

ダッシュボード(WordPress管理画面)の一般設定にある項目、「WordPress アドレス (URL)」「サイトアドレス (URL)」の内容を誤って変更すると、ログイン画面が表示されなくなったり、ログインできなくなります。

ローカルの検証用環境ですので、URLもそのまま掲載しております

私も執筆前日?の深夜26時(つまり今日)、「なんとかなるだろ」と軽い気持ちでURL変更したところ、ログインが出来なくなってしまい夜中に焦りまくっていました。
何となく同じノリでまたやらかしてしまいそうなため、この記事を書きました。

2つの対応方法があります。
「どうしてもSQLのデータを触るのが怖い」という方は1つ目の方法で対応してほしいと思いますが、できれば2つ目の方法で根本解決してください。

1. wp-config.phpで対応する方法

01. FTPソフトでwp-config.phpをダウンロード

FTPソフトなどを利用してサーバーに接続し、ルートディレクトリ([wp-content]フォルダなどがある階層)のwp-config.phpをダウンロードします。

wp-config.phpの修正を誤ると大事故になります。一応、ルートディレクトリには「wp-config-sample.php」ファイルもありますが、ダウンロードしたらファイルをコピーしておき、いつでも元の状態に戻せる(コピーしたファイルをアップロードして作業前の状態に戻せる)ようにします。

02. ダウンロードしたwp-config.phpをテキストエディターで開き、追記

テキストエディターなどでwp-donfig.phpファイルを開き、

define('WP_SITEURL', 'http://***.**');

***.**の部分は、自分の環境に合わせる

と、追記します。
場所に関してはどの辺でも良いようですが、追記した場所を覚えておきやすい「 /**#@+ 」から始まるコメントの手前付近がよいかと思います。

define('WP_SITEURL', 'http://dot8.local');

オフラインの検証用環境のwp-config.phpのため、Database passwordなどの値も確認できる状態で画像アップしましたが、通常は伏せるべき情報です。みなさんは、誤ってもオンライン上に公開したりすることのないよう、ご注意ください。

03. 修正したwp-config.phpを元の場所に上書きアップロード

修正したファイルをアップロードしたら、作業は終了です。

この作業によりログインできるようになったはずですが、この方法で対応すると、WordPress アドレス (URL)部分が修正できない状態になります。

とりあえず使い続ける分には問題ないはずですが、根本解決したい場合は、次に紹介する方法による根本解決が必要です。

2. データベースを修正する方法

01. データベースツールにログイン

各サーバーが用意しているデータベースツールにログインします。
「phpMyAdmin」の場合が多いと思いますが、ローカル環境は「Adminer」でした。

02. 修正対象のデータベースをクリック

改めて該当するデータベースを選択しなくても良い場合が多いと思いますが、該当のデータベースを探して選びます。「information_schema」など_schemaがつくデータベースではありません

03. wp_optionsテーブルを選択

環境によって「wp1_options」であったり、まったく異なる接頭語がついていたりする場合もありますが、「_options」で終わるテーブルが1つ存在するはずですのでそのテーブルを選びます。

04. 「option_name」から「siteurl」をさがし値を修正

「option_name」列が「siteurl」の行を探します。
「option_value」が誤ったURLになっているはずですので、その行の左側の列にある「編集」をクリックし、URLを修正して「実行する」をクリックします。
「phpMyAdmin」では、編集を押さなくても、「siteurl」の行の誤ったURLの値部分をダブルクリックし、そのまま修正できるようです。

05. 「1. wp-config.phpで対応する方法」でwp-config.phpを修正した場合は元に戻す

手順04.までの作業で、不具合は解消されています。
「1. wp-config.phpで対応する方法」を実施した方は、wp-config.phpに追加した

define('WP_SITEURL', 'http://***.**');

の部分を消し、FTPツールなどでwp-config.phpをアップロード(あるいは、作業前にコピーしておいたwp-config.phpをFTPツールなどでアップロード)してください。

「1. wp-config.phpで対応する方法」を実施していない方は、この手順は不要です。

「2. データベースを修正する方法」を実施すると、「1. wp-config.phpで対応する方法」でおこる制約も発生しません。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です