WordPressはとても便利なツールですが、厄介なのが不具合。

不具合が起こると、ホームページがきちんと表示されなくなって、復旧までに時間が掛かってビジネスに影響が出ますし、復旧するのに高い専門性も必要になります。

そこで今回は、事前に将来不具合が出そうな箇所を予め修正することができる方法をご紹介したいと思います。

不具合の原因は様々なので、全ての不具合を回避できる訳ではありませんが、これをすることで回避できることもあり、より安全にWordPressの運営ができるようになります。

まずはWordPressで不具合が出る背景について説明します。

不具合の出やすさはWordPressを構築する人によって変わる

WordPressは同じ仕様でも制作する人によって構築のしかたはバラバラで、構築のしかたによって不具合の起きやすさが変わってきます。

だから、そういうことまでわかっている人は、不具合が起きにくいように設計・構築をしています。

不具合が起こりにくくするのは、ホームページを運営していく上で大事なことですが、こういうことはあまり知られていないので、この機会にそういうこともあるんだと知っていただければと思います。

WordPressのアップデートで今まで正しかったやり方がエラー扱いに

WordPressを構築する人によって不具合の起きやすさが変わる。

それなら、そういうことまでわかっている人がきちんと構築したら不具合が出ないかというと、そういう訳でもありません。

ホームページが完成(WordPressを構築)した時点ではエラーではなく、なにも変更していないのに月日が経つとエラーになることがあります。

その原因がWordPressのアップデートです。

WordPressのアップデートによって、問題なかったことがエラーになる

WordPressやプラグインは、よりセキュリティを強化したり、より快適にするために、次々に新しいバージョンをリリースしていて、アップデートによって仕様が変更されて、それまで正しかったやり方がエラーになることがあります。

どういうことかというと、WordPressを構築した時点では推奨される正しいやり方をしていたのに、ある日推奨されるやり方が変わって、アップデートしたら今まで正しかったやり方が推奨されないやり方になってエラー扱いになってしまう訳です。

ここまで読むと、「不具合が出る可能性があるなら、アップデートしない方がいい」と考える方がいるかもしれません。

しかし、アップデートをしないと脆弱性がそのままになってしまい、ホームページをハッキングされる危険があります。

ホームページがハッキングされると不具合が出る以上の被害が出るので、セキュリティ面を考えると新しいバージョンが出たらアップデートした方がいいです。

また、快適性の面で見ると、新しい技術に対応してページの表示を速くすることができます。

ページの表示が速くなってサクサク見れるようになると、WEBマーケティングやSEO対策にとってプラスになるので、ビジネスのホームページとしてのパフォーマンスが上がるメリットもあります。

アップデートでエラー扱いになっても、すぐには不具合は起きない

WordPressのアップデートで、エラー扱いになったとしてもすぐに不具合が出るのではなく、新しい仕様に移行するための猶予期間があります。

猶予期間の間は、新しいやり方・今までのやり方の両方で動作するようになっているので、エラー扱いになったやり方でも問題なくホームページが動作しますが、いずれエラー扱いになったやり方が廃止されると、不具合になってしまいます。

エラーが出ていても、エラーは表示されない

WordPressのデフォルトの設定では、エラーが出ていても、エラーが表示されないようになっています。

ですから、エラーが出ていてもエラーに気付かずに、不具合が出てはじめてエラーがあったことに気付くということも起こります。

ですから、下手をするとホームページが完成した時点ですでにエラーがある状態だったということもある訳です。

そこで、WordPressでエラーがあるかどうかわかる状態にするのが、デバッグモードです。

現在エラーが出ている箇所がないか見つけることができるデバッグモード

「デバッグ」という言葉はあまり聞き慣れない言葉ですが、ウィキペディアには次のように書かれています。

デバッグとは

デバックをウィキペディアで調べると次のように書いています。

デバッグ(英: debug)とは、コンピュータプログラムや電気機器中のバグ・欠陥を特定して取り除き、動作を仕様通りのものとするための作業である。 “de-”は「〜から離れて/分離して/除去して」といった否定の意味を持つ接頭辞であり、「虫」を意味する英語名詞“bug”と結びついた複合語が“debug”である。

WordPressでいえば、エラーやバグを見付けて修正する作業です。

デフォルトの状態では表示されないエラーを表示されるようにするのが、WordPressのデバッグモードです。

WordPressのデバッグモードにする方法

WordPressのデフォルト状態では、このデバッグモードがOff(false)の状態になっているので、デバッグモードをOn(true)にしてあげるとデバッグモードになります。

デバッグモードにする手順は次の通りです。

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

デバッグモードにするためには、wp-config.phpを編集する必要があるので、FTPソフトを使ってダウンロードします。

wp-config.phpがある場所は、WordPressをインストールしたディレクトリ(階層)にありますので、wp-config.phpを探してダウンロードします。

FTPソフトから見たwp-configファイル

WordPressの構築のしかたによっては、上の画像のようにwp-config-sample.phpが残っている場合がありますので、間違えないように注意してください。

2、テキストエディタでwp-config.phpを編集

wp-configのデバッグモード部分

ダウンロードしたwp-config.phpをテキストエディタで開いて、上の画像の『define』から始まる行を探します(この環境では75行目にありました)

この行の『false』を『true』に書き直して保存します。

3、修正したファイルを元の場所にアップロード

『false』から『true』に書き換えたファイルをwp-config.phpがあった場所にアップロード(上書き)すれば、デバッグモードにすることができます。

デバッグモードにすると今まで表示されていなかったエラーが表示される

デバッグモードにしてホームページか管理画面を開くと、エラーがあれば一番上にエラーの内容が表示されます。

構築してから月日が経っているほど、WordPressの仕様変更でエラーが出やすいです。

エラーが出やすいのはサイドバーに関するエラー

WordPress公式のテーマではアップデートで対応していると思いますが、オリジナルのテーマを使っていたら出やすいのは下の画像のサイドバーのエラーだと思います。

デバッグモードでサイドバーのエラー表示

これは「外観」→「ウィジェット」を使えるようにするための関数で、それまでidを付けなくてもよかったのが、WordPressの仕様が変わり、idを付けていないとエラー扱いになったものです。

すぐにウィジェットが使えなくなる訳ではないと思いますが、気付いたら念のため修正しておいた方がいいと思います。

セキュリティも考えて作られているとhas_cap関数のエラーも出やすい

また、has_capと書かれたエラーが出る場合もあります。

これはアカウントの権限についての関数で、きちんとセキュリティを考えて作られているほど出やすくなります。

これもサイドバーと同様に、WordPressの仕様が変わって、今まで正しかったコードの書き方が非推奨になり、現在ではエラー扱いになったもので、エラー扱いになっているやり方はいずれ廃止されるかもしれないので、念のため修正しておいた方がいいと思います。

デバッグモードの戻し方

エラーの修正が終わったら、デバッグモードをOffにして元に戻します。

元に戻すやり方は、先程のwp-config.phpの『true』にした部分を『false』に書き換えて保存して、またFTPソフトでアップロードし直す(上書きする)だけです。

デバッグモードを使う際の注意点

デバッグモードを使う際の注意点が2つあります。

1、wp-config.phpを編集する際は細心の注意を

wp-config.phpはWordPressの中でも特に重要なファイルで、間違った編集をしてしまうと最悪ホームページが表示されなくなりますので、wp-config.phpを編集する際には、細心の注意を払ってください。

万が一間違えてもすぐに戻せるようにバックアップを取っておくのが良いかと思います。

2、ホームページにもエラーが表示される

エラーが出ている状態でデバッグモードにすると、ホームページにもエラーが表示されて、表示がおかしくなります。

エラーは、エラーを修正するか、通常のモードに戻すまで表示されますので、デバッグモードにする際は、閲覧者が少ない時間帯にするか、テスト環境でデバッグモード・エラー修正をした方が良いかと思います。