Avada テーマ 'Warning: Trying to access array offset on value of type bool' 警告

Last Updated: 2021 年 11 月 28 日 댓글

人気多目的 WordPress テーマである Avada(Avada)をインストールしたサイトで「Warning:Trying to access array offset on value of type bool...」という警告が表示されることがあります。 これらのエラーが表示された場合は、確認事項を見てみましょう。

Avada テーマ 'Warning: Trying to access array offset on value of type bool' 警告

このサイトに一時的に Avadaをインストールして使用したことがあります。 今はテスト目的でのみインストールして使用しています。

テストサイトにインストールされている Avada テーマに次の警告が表示されました。

Warning: Trying to access array offset on value of type bool in /home/public_html/wp-content/themes/Avada/includes/class-avada-head.php on line 174

Googleで検索してみると、この警告が発生するサイトが結構あります。

Avada テーマ 'Warning: Trying to access array offset on value of type bool' 警告

クラス-avada-head.phpの行174付近のコードは次のとおりです。

} else {
			$thumbnail_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' );
			$image         = esc_attr( $thumbnail_src[0] );
		}

この警告が表示されるサイトでは、 PHP 8.0が適用されていました。 PHPバージョンを7.4にダウングレードすると警告が消えました。 サーバーに一部のPHPモジュールが欠落して発生していないかと疑われ、毎日PHPモジュールをXNUMXつずつ有効/無効にしながらテストしてみると警告が消えませんでした。

この過程で面白い事実を発見しました。 PHP 8.0が適用された他のホスティングのサイト Avada テーマをインストールして確認してみると、この警告は表示されませんでした。 問題が発生しているサイトで Avada ライセンスを一時的に無効化(登録解除)してから再度有効化(登録)した後、 Avada Coreと Avada Builder以外のすべてのプラグインを無効にしても問題はありませんでした。 そして、再びプラグインを有効にしても問題は再発しませんでした。

要約

  1. この警告が表示された場合 Avada Coreと Avada Builderを除くすべてのプラグインを無効にして、問題が解決するかどうかを確認します。 警告が表示されない場合は、プラグインをXNUMXつずつ有効にして問題が発生していないことを確認してください。
  2. WordPress 伝言板> Avada > Dashboardから 登録解除 ボタンをクリックして、 Avada ライセンスを無効にしてから、Item Purchase Code(購入コード)を入力してテーマを再登録して問題が解決するかどうかを確認します。 問題が引き続き発生する場合、この状態で Avada コア/Avada Builderを除くすべてのプラグインを無効にして、問題が解決するかどうかを確認します。 再度プラグインを有効にすると、警告が消えることがあります。
  3. 上記の手順で解決できない場合は、PHPバージョンがPHP 8.0の場合はPHP 7.4に変更してください。
  4. それでも問題が解決しない場合 Avada テーマ販売者にサポートを依頼します。 サポートをリクエストするには、有効なサポートライセンスが必要です。

最後に、

Avadaで「Warning: Trying to access array offset on value of type bool...」という警告が表示され、PHP 8.0との互換性に問題があるようだと思われたが、どんな理由なのかわからなくても1)サイトで Avada テーマライセンスの登録を解除して再登録し、2)プラグインを無効にしてから再度有効にすると警告が消えました。

PHP 8.0では、まだいくつかのテーマやプラグインが問題を引き起こす可能性があります。 たとえば、PHP 8.0が適用されている WordPress サイトに KBoard(Kboard)をインストールすると正しく動作しません。 ホスティング会社が異なる8.0つのサイト(PHP XNUMX適用)に KBoardをインストールしてテストしたところ、あるサイトでは「このウェブサイトに致命的なエラーがあります」 エラーが発生し、他のサイトでは次のような故障エラーが表示されました。

Fatal error: Uncaught TypeError: in_array(): Argument #2 ($haystack) must be of type array, null given in /home/public_html/demos/wp-content/plugins/kboard/class/KBContent.class.php:626 Stack trace: #0 /home/public_html/demos/wp-content/plugins/kboard/class/KBContent.class.php(626): in_array() #1 /home/public_html/demos/wp-content/plugins/kboard/class/KBoardBuilder.class.php(516): KBContent->increaseView() #2 /home/public_html/demos/wp-content/plugins/kboard/class/KBoardBuilder.class.php(312): KBoardBuilder->builderDocument() #3 /home/public_html/demos/wp-content/plugins/kboard/index.php(808): KBoardBuilder->create() #4 /home/public_html/demos/wp-includes/shortcodes.php(356): kboard_builder() #5 [internal function]: do_shortcode_tag() #6 /home/public_html/demos/wp-includes/shortcodes.php(228): preg_replace_callback() #7 /home/public_html/demos/wp-includes/class-wp-hook.php(303): do_shortcode() #8 /home/public_html/demos/wp-includes/plugin.php(189): WP_Hook->apply_filters() #9 /home/public_html/demos/wp-includes/post-template.php(253): apply_filters() #10 /home/public_html/demos/wp-content/themes/dt-the7/page.php(31): the_content() #11 /home/public_html/demos/wp-includes/template-loader.php(106): include('/home/...') #12 /home/public_html/demos/wp-blog-header.php(19): require_once('/home/...') #13 /home/public_html/demos/index.php(17): require('/home/...') #14 {main} thrown in /home/public_html/demos/wp-content/plugins/kboard/class/KBContent.class.php on line 626

このエラーが発生した場合は、代替掲示板プラグイン(マンボードなど)を使用するか、PHPバージョンを7.4または7.3に変更できます。

参照


コメントを残す

コメント