• お世話になっており
    ます。 Homeの固定ページを表示させようとしたと...
  • guest 
    お世話になっております。

    Homeの固定ページを表示させようとしたところ、「重大なエラーが発生しました」となりページが表示されませんでした。
    ブラウザからhome.phpへアクセスすると以下のようなエラーが出ました。

    Fatal error: Uncaught Error: Call to undefined function get_header() in /Applications/MAMP/htdocs/wordpress/wp-content/themes/sample/home.php:8 Stack trace: #0 {main} thrown in /Applications/MAMP/htdocs/wordpress/wp-content/themes/sample/home.php on line 8

    get_header() が定義されていないということのようだったので、動画と見比べながらスペルミスや全角スペースが混ざっていないかなど確認しましたが解決できませんでした。header.phpにブラウザからアクセスしましたが、エラー表示はなく白い画面になっています。

    一旦先へ進み、INFOの固定ページを表示させたところ、wordpressの管理画面からは動画の通りに表示されました。
    ですが、ブラウザからアクセスするとこちらも上記と同じエラーが出てしまいます。

    スペルミスの他に考えられる原因はなんでしょうか。それともやはりどこかで記述が間違っている可能性が高いでしょうか。
    ご教授いただけると幸いです。

    使用環境:Mac、MAMP、Chrome

    回答 1

    ウェブカツコーチ 
    講師からの回答
    WordPressは設定を行わないとエラー時に真っ白な画面が表示されます。header.phpにアクセスした際に真っ白なg面になったのはそのための可能性があるため、下記記事を参考にエラー出力をできるようにし、再度header.phpにアクセスしてみてください。

    参考)
    https://qiita.com/AlohaOkinawa/items/71807294807f2b3dd923


    なお、エラーメッセージの内容はご認識頂いている通りで「定義されていない関数get_header()を呼ぼうとしている」というものです。発生原因は関数の文法ミス等によるものがほとんどでしょうが、他にもキャッシュが原因となることもあるため、ブラウザのキャッシュをクリアしてみるのも試してみてください。
    また、どうやらワードプレス本体のファイルに欠損や破損がある場合もこのエラーが出ることもあるようです。

    参考)
    https://wp-doctor.jp/blog/2016/03/03/wordpress-%E3%83%AF%E3%83%BC%E3%83%89%E3%83%97%E3%83%AC%E3%82%B9%E3%81%AE%E3%82%A8%E3%83%A9%E3%83%BC%E8%A7%A3%E8%AA%AC%EF%BC%9Afatal-error-call-to-undefined-function-get_header/

    guest 
    回答ありがとうございます。

    提示していただいたURLを元にエラー表示の設定を変えました。
    しかしその後も上手く解決しませんでしたので、もう一度ファイルを読み込んだところ解決できました。
    最初のコードと作成し直したコードを差分で確認しましたが、スペルミスは見つかりませんでしたので、ご指摘の通りファイルが欠損していたのかもしれません。

    大変参考になりました。ありがとうございました。