• talktoyourheart

    (@talktoyourheart)


    PHP8.3.24.にバージョンアップしたところ、テーマに不具合が起きているようで、下記のようなエラーが表示され、webサイトの閲覧およびwordpressのリカバリーモードにアクセスできなくなっています。

    webサイト閲覧時のエラー:

    Fatal error: Uncaught Error: Call to undefined function is_mobile() in /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-content/themes/xeory_base-child/header.php:38 Stack trace: #0 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/template.php(810): require_once() #1 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/template.php(745): load_template('/home/users/1/m...', true, Array) #2 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/general-template.php(48): locate_template(Array, true, true, Array) #3 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-content/themes/xeory_base-child/index.php(1): get_header() #4 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/template-loader.php(106): include('/home/users/1/m...') #5 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-blog-header.php(19): require_once('/home/users/1/m...') #6 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/index.php(17): require('/home/users/1/m...') #7 {main} thrown in /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-content/themes/xeory_base-child/header.php on line 38

    リカバリーモードアクセス時のエラー:

    Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 20480 bytes) in /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/functions.php on line 656

    解決方法をご教示いただけますと幸いです。

    • このトピックは2ヶ月、 2週前にSetouchi Kotoriが編集しました。理由: コードブロックの適正使用、サーバー情報をマスク

    ヘルプの必要なページ: [リンクを見るにはログイン]

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • モデレーター Setouchi Kotori

    (@setouchikotori)

    PHPバージョンをいったん直前のバージョンに戻してみてください。

    トピック投稿者 talktoyourheart

    (@talktoyourheart)

    リカバリーモードにアクセスできるようになりました。

    webサイトの方は変わらず、下記のエラーメッセージが表示されます。

    Fatal error: Uncaught Error: Call to undefined function is_mobile() in /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-content/themes/xeory_base-child/header.php:38 Stack trace: #0 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/template.php(810): require_once() #1 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/template.php(745): load_template('/home/users/1/m...', true, Array) #2 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/general-template.php(48): locate_template(Array, true, true, Array) #3 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-content/themes/xeory_base-child/index.php(1): get_header() #4 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-includes/template-loader.php(106): include('/home/users/1/m...') #5 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-blog-header.php(19): require_once('/home/users/1/m...') #6 /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourh in /home/users/1/main.jp-xxxxxxxxxx/web/talktoyourheart/wp/wp-content/themes/xeory_base-child/header.php on line 38
    • この返信は2ヶ月、 2週前にSetouchi Kotoriが編集しました。理由: コードブロックの適切な使用、サーバー情報の一部をマスク
    モデレーター Setouchi Kotori

    (@setouchikotori)

    お使いの子テーマ xeory_base-child 内の header.php ファイルで is_mobile() という関数が呼び出されていますが、現在の WordPress 環境ではこの関数が存在しないために発生する致命的なエラーです。

    リカバリーモードアクセス時のエラーは、PHP が処理を実行するために割り当てられたメモリ上限(この場合は256MB)を使い切ってしまったことを示すエラーです。根本原因である可能性が高い is_mobile() エラーが解消されれば、こちらのエラーも解消されると思われます。

    ──

    【1】 FTPソフトまたはファイルマネージャでサーバーに接続する
    ご利用のレンタルサーバー (ロリポップですかね) が提供している「ファイルマネージャ」機能や FileZilla などの FTPクライアントを使用して、WordPress がインストールされているディレクトリにアクセスし、wp-content をバックアップしてください。

    【2】 データベースをバックアップする
    サーバーの管理画面からデータベースにアクセスし、バックアップしてください。

    【3】 テーマファイル header.php を修正する

    1. 以下のパスにあるファイルを特定します。
      /wp-content/themes/xeory_base-child/header.php
    2. header.php をダウンロードし、テキストエディタで開きます。
      (ロリポップであれば、サーバーのファイルマネージャで直接編集できます。必ずバックアップを取った上で編集してください)
    3. エラーメッセージにて指摘されている 38行目 を見つけます。is_mobile() が使われている箇所があると思います。
    4. is_mobile()wp_is_mobile() に書き換えます。
      【修正前】 <?php if ( is_mobile() ) : ?>
      【修正後】 <?php if ( wp_is_mobile() ) : ?>
    5. 修正したファイルを保存し、サーバーの元の場所にアップロードして上書きします。

    【4】 サイトの表示を確認する

    ──

    FTP やファイルマネージャの操作に不安がある場合は有償で専門家に依頼なさることもご検討なさってはと思います。

3件の返信を表示中 - 1 - 3件目 (全3件中)

このトピックに返信するにはログインが必要です。