• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

株式会社ハイファイブクリエイト

東京都を拠点にWebサイト制作やシステム構築、WordPress保守管理やウェブコンサルティングを提供。

  • SERVICE
  • ABOUT
  • WORKS
  • BLOG
  • NEWS
  • CONTACT
ホーム / ブログ / TIPS / PHP7.4から8.0以上に更新するとWordPressのループ箇所が表示されなくなってしまう原因と解決策

PHP7.4から8.0以上に更新するとWordPressのループ箇所が表示されなくなってしまう原因と解決策

池田祐太郎 | 2024年1月16日 公開 コメントを書く

PHP7.4のセキュリティリリースが終了してもう1年以上経っています。本来ならば8.1以上を利用するのが望ましいのですが、なかなかPHPの更新まで手が回らないでいるというサイトも少なく有りません。

今回はPHP7.4までは問題なかったものの、8.0以上に更新した際にWordPressのループ箇所から以降が一切表示されず、エラーメッセージも表示されなくなってしまった場合の原因と解決策についてです。

なお、PHPの更新作業はバックアップを作成した上で、本番環境ではないテスト環境や開発環境で実施し、確認後に本番環境で実施することを推奨します。

目次

  • 1 PHP 8.0に更新するとループ以降が一切表示されないエラーが発生
  • 2 PHP 7.4に戻し、デバッグモードを有効化して確認する
  • 3 波括弧を使った配列や文字列のオフセットへのアクセスは7.4から非推奨となった
  • 4 PHPの更新は定期的に行うのが安全

PHP 8.0に更新するとループ以降が一切表示されないエラーが発生

WordPress のループによってお知らせ的なコンテンツを表示していた箇所がありました。イメージとしては以下です。

ループ箇所のイメージ図。

最新順に記事が並んでいるよくあるようなループです。

PHP を8.0に更新したところ、今まで表示されていたWordPressのループ箇所とループ以降のコンテンツが表示されなくなってしまうエラーが発生しました。

PHP8.0へ更新後のイメージ図。

さらに、デバッグモードを有効化しているにも関わらず、エラーメッセージが画面にもログにも表示されていませんでした。

PHP 7.4に戻し、デバッグモードを有効化して確認する

ループが表示される以前のPHP 7.4に戻します。この状態で、WordPress のデバッグモードを有効化して確認します。(wp-config.php 内のWP_DEBUGをtrueに設定)

参考: テスト環境や開発環境を用意したら有効化しておきたいデバッグモード

確認すると、警告エラーのメッセージが表示されました。さらに、将来のPHPでエラーとなるとも書いてあります。

Warning: Use of undefined constant data_category - assumed 'data_category' (this will throw an Error in a future version of PHP) in /path-to-wordpress/wp-content/themes/name/archive.php on line 60

このエラーメッセージは、PHPコードにおいて定義されていない定数 data_category がコード内で使用されているものの、適切に定義されていないことを示しています。

場所はarchive.php ファイルの60行目です。該当ファイルを見てみましょう。

波括弧を使った配列や文字列のオフセットへのアクセスは7.4から非推奨となった

該当ファイルのコード内で ${data_category} という記述が使われていました。この記述はPHP 7.4以降非推奨になったと公式に記載があります。

波括弧を使って配列や文字列のオフセットにアクセスする文法は推奨されません。$var{$idx} でなはく $var[$idx] を使って下さい。

PHP: PHP 7.4.x で推奨されなくなる機能 – Manual

よって、ファイル内の波括弧である { と } を削除します。 ${data_category} から $data_category に変更します。これにより無事解決。エラーメッセージは消え、WordPressのループや以降のコンテンツも正しく表示されました。

PHPの更新は定期的に行うのが安全

ちなみに、8.0のリリースノートにはこの件について書かれているか確認してみましたが、見つけることはできませんでした。8.0に更新すると非表示になるということは、7.4で非推奨、8.0で完全に削除された、と考えていいと思います。

今日現在、安全に利用できるPHPのバージョンは8.1以降です。8.1も2024年11月にセキュリティサポートが終了予定なので、できれば8.2以降を利用するのが安全です。

8.1は現在セキュリティサポート状態。安全のためには8.2か8.3を利用したいところ。

PHP: Supported Versions

しかし、レンタルサーバーによっては最新のPHPが8.1というところもあります。その場合はレンタルサーバー側で利用できるようになってから更新しましょう。

冒頭でも書きましたが、PHPの更新は必ずテスト環境で実施しましょう。今回のようにエラーが発生したら対応してから、本番環境に対応したファイルを反映してPHPを更新します。これにより、安全な更新作業となります。

参考: WordPressのテストサイト・検証用環境の作り方

メールコンサルティング
WordPress保守管理サービス

カテゴリTIPS 関連タグ:php, 保守管理

池田祐太郎

WordPress の構築・保守を10年以上にわたって手掛けており、主に小〜中規模のコーポレートサイト・ECサイト・ブランドサイト等の企画・開発・保守・コンサルティングなどを行ってきました。2012年にハイファイブクリエイトを創業し、現在は WordPress の保守やコンサルティング、ディレクションや開発業務などを担当しています。 プロフィール詳細

Reader Interactions

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.

この記事と関連する記事

WordPressのプラグイン自動更新のロールバック機能が正しく動くのか確認してみた
2024年8月7日
タグ: 保守管理
カテゴリー: WordPress
WordPressにおける突然のデータベース接続エラーと自動復旧の原因と解消法
2024年6月5日
タグ: 保守管理
カテゴリー: WordPress
あなたのサイトは大丈夫?ファイル一覧公開の危険性
2024年5月11日
タグ: SEO, セキュリティ, 保守管理
カテゴリー: 仕事のこと

最初のサイドバー

WordPress保守管理サポート

Search

最近の投稿

  • 2024-2025年末年始の営業のご案内
  • WordPressのプラグイン自動更新のロールバック機能が正しく動くのか確認してみた
  • 遅延読み込み開始させる画像を変更させるWordPressカスタマイズ
  • WordPressで特定の画像やアイキャッチ画像をlink rel=”preload”に設定する
  • WordPressのプラグインがどのくらい表示速度を重くさせるのか22個のプラグインで検証

カテゴリー

  • CSS初心者
  • HTML初心者
  • TIPS
  • WooCommerce
  • WordPress
  • エステサロン
  • お知らせ
  • キュレーション
  • サイトマップ
  • システム会社
  • デベロッパーツール入門
  • ブログ
  • ホームページ制作
  • ホームページ制作無料講座
  • メール
  • モバイル
  • 仕事のこと
  • 制作実績
  • 整体院
  • 美容院
  • 雑感

タグ

ai Android ChatGPT CMS css DALL-E elementor gmail google workspace Gutenberg HTML iPhone jQuery Mac Photoshop php SEO SNS ssh SSL Webサイト高速化 Windows WordPress WordPressカスタマイズ WordPressテーマ WordPress構築調査 WPRocket アクセス解析 クラウドソーシング サイト引っ越し サブスクリプション サーバー ショートカットキー スマホサイト スマートフォン セキュリティ ツール ブログ プラグイン マーケティング リニューアル レスポンシブWebデザイン 保守管理 最適化 集客するサイト構築

アーカイブ

CONTACT

お問い合わせはこちら

Footer

  • PRIVACY POLICY
  • 情報セキュリティ基本方針
  • 特定商取引法に基づく表示
  • 転載/引用

© 2025 high five create All rights reserved.