ワードプレスでつまずきがちなトラブル対処法

nomuraのプロフィール画像
nomura

エンジニアチームでは開発中や公開後に発生したトラブルなどをWikiにまとめてチームで共有しています。今回はWordPressに関することをいくつかをピックアップして紹介します。原因と対処法さえわかっていればトラブルも大したことはないので参考にしてください。

1. 公開している画面が真っ白になってしまった(1)

エラーが発生している可能性があるので、デバッグモードを有効にしてエラー情報を画面に表示して確認します。エラー情報を見れば多くの場合は原因を特定できます。

よくあるのは以下のような原因です。

  • プログラムのミス
  • WordPressとプラグインのバージョンの不整合
  • PHPとWordPressとプラグインのバージョンの不整合
トラブルが発生して困っているエンジニア(Stable Diffusion)

デバッグモードを有効にする方法

「wp-config.php」の「WP_DEBUG」の指定を「true」にします。確認が終わったら「false」に戻しておきましょう。

define( 'WP_DEBUG', true );

2. 公開している画面が真っ白になってしまった(2)

追加したプラグインでエラーが発生している可能性があるので、プラグインを削除して画面が表示されるか確認します。もしプラグインが原因であれば、別のプラグインに変更するなどして対応します。プラグインの組み合わせによってもトラブルが発生する場合があります。

3. 画像(メディア)のファイルサイズが大きくてアップロードできない

PHP(php.ini)の以下の設定を変更して、ファイルをアップロードできる最大値を変更します。使用しているサーバーによってはサーバーの管理画面から設定を変更できる場合もあります。公開前にどのぐらいのファイルをアップロードする想定か顧客に確認しておき、事前に設定しておきます。

最大サイズを50Mにする場合の例

upload_max_filesize = 50M
post_max_size = 50M
memory_limit = 256M

4. 公開している画面にアクセスするとForbiddenになってしまった

WordPressでアクセスするページのディレクトリが物理的に存在している可能性があります。必要なければディレクトリを削除か、どうしても必要な場合はディレクトリにWordPressのインストールディレクトリにある「index,php」を該当ディレクトリ配下にコピーして設置します。

※「index,php」の以下のパスは設置するディレクトリにあわせて変更します。

require __DIR__ . '/wp-blog-header.php';

5. 意図したテンプレートが参照されない

プラグインの「Rewrite Rules Inspector」で、URLに対してどんなリライトルールが適用されているか確認します。想定しているものと異なるルールが適用されていた場合、「add_rewrite_rule」で強制的にリライトルールを適用させます。

リライトルール例

function add_custom_rewrite_rules() {
  add_rewrite_rule('(news)/(.+?)/?$', 'index.php?post_type=$matches[1]&news_type=$matches[2]', 'top');
}
add_action('init', 'add_custom_rewrite_rules');

6. 管理画面にログインするためのユーザーがわからなくなってしまった

WordPressのログイン情報は非常に重要なのでしっかり管理しておくべきですが、どうしてもログインできなくなってしまった場合は以下の方法でログインできるようにします。

対処方法(1)

  1. phpMyAdminなどで「wp_users」テーブルの「user_login」カラムの値を確認する。
  2. 「user_email」カラムの値を受信できるメールアドレスに変更する。
  3. ログイン画面の「パスワードをお忘れですか ?」で「2」のメールアドレスを入力してパスワードを再発行する。

対処方法(2)

  1. phpMyAdminで「wp_users」テーブルの「user_pass」カラムの値を新しいパスワードで更新する。このとき関数は「MD5」を選択する。
  2. 「user_login」カラムの値を確認する。
  3. 「1」と「2」の情報でログインする。

おわりに

問題が解決して笑顔のエンジニア(Stable Diffusion)

WordPressに限りませんが、問題が発生したらまずはエラーログを確認して、それでも解決できない場合は、正常だった時とエラーが発生するまでの間におこったこと(ファイルの更新やバージョンアップなど)を確認することでたいていは原因の特定ができます。

トラブルは原因と対処方法がわかっていれば大したことはないですが、逆に知らないと調査などにかなりの工数を割かれてしまいます。そのためにもトラブルが発生して、その対処をしたら、その内容をチームで共有しておき、チーム全体として次回以降に他の人が不要な工数をかけてしまわないようにしましょう。

ベイジでは今後もエンジニアを増員していきますので、ご興味がある方は採用サイトもご覧ください。(エントリーするか迷っている方向けのカジュアル面談も実施してます)

こんな記事も読まれています

WordPressの外観カスタマイズでノーコードのような機能を実装する方法
WordPressの外観カスタマイズでノーコードのような機能を実装する方法
さかっちょのプロフィール画像
さかっちょ
ワードプレスの開発前に確認しておくこと
ワードプレスの開発前に確認しておくこと
nomuraのプロフィール画像
nomura
WordPress管理画面の使いやすさを向上させる7つのテクニック
WordPress管理画面の使いやすさを向上させる7つのテクニック
さかっちょのプロフィール画像
さかっちょ
ワードプレスの開発で役に立ったDBエンジニアの経験
ワードプレスの開発で役に立ったDBエンジニアの経験
nomuraのプロフィール画像
nomura
上に戻る