IMG 4989

トラブルをおいしいと思うようになってきました、@jinnaitakumiです!

今回のポイントをまとめると

  • トップページのみが表示されない不具合が発生
  • 原因は「Head Cleaner」というプラグインでした
  • 原因不明のトラブルが起きたらプラグインを疑おう

の3つです!

自作テーマでトップページが表示されない

自作テーマを有効化したら、いきなりトップページが表示されないという不具合が発生!ウソでしょ!

原因は、SEO対策に効果があると言われるプラグイン「Head Cleaner」でした。

「Head Cleaner」とは、ヘッダーの記述をGoogle先生向けに整形してくれるプラグインです。

原因の究明

トラブルはトップページのみで発生していました。

個別の記事ページや、固定ページ、カテゴリーページは無事なので、原因は「home.php」というトップページを表示するためのファイルにあるのかな、と思ったんですが、特に問題はありません。

そもそもローカルのテスト環境では問題なく動作していたので、記述そのものに問題があるとは思えませんしね。

Google先生に訊いてみると、「index.html」というファイルが存在すると、トップページが表示されない不具合が発生することがある、という情報を見つけましたが、どうやらそれもないみたい。

原因がまったく分からなかったので、プラグインをひとつずつチェックしていくことにしました。(トラブルの原因はたいていプラグイン)

まずはアップデートから

プラグインのアップデートがかなり溜まってしまっていたので、ひとつずつアップデートして、表示されるかを確認してみました。

しかし、すべてをアップデートをしても、残念ながらトップページは表示されません。

ひとつずつプラグインを停止する

なんとなくの見当をつけて、順にプラグインをひとつずつ確認していくことにしました。プラグインを停止して、様子を見るのです。

すると「Head Cleaner」を停止したときに、トップページが無事に表示された!カンゲキ!

悪魔は「Head Cleaner」だったのです!

なぜ、トップページだけが表示されなかったのか

WordPressでは普通、ヘッダー(タイトルとかナビゲーションバーとか)は「header.php」というファイルに作っておいて、それを各ページ(個別ページとか固定ページとか)で呼び出して、ヘッダーを表示します。

「Head Cleaner」はおそらく、この「header.php」を整形してくれるんでしょうね。

私の場合、hタグの最適化の都合で、トップページのみ「header.php」を利用して、他のページでは別のファイルを呼び出すようにしていました。

だから他のページは問題なくて、トップページだけがトラブルに見舞われたわけです。

まとめ

ということで、今回のポイントをまとめると

  • トップページのみが表示されない不具合が発生
  • 原因は「Head Cleaner」というプラグインでした
  • 原因不明のトラブルが起きたらプラグインを疑おう

の3つです!

プラグインは便利な反面、こういったトラブルの原因にもなるので、注意が必要ですね。

とりあえず、「Head Cleaner」は使わないことにします。