bbPress 2.5.13 Fatal error: Uncaught Error: [] operator not supported for strings

優

bbPress

 

先日まで動いていたフォーラムページが、いつのまにか配列系エラーが発生してページが表示されなくなっていた…!

プラグインインストール時にPHPバージョンと合わずに、そのまま動作しないというのは普通ですが、稼動して1ヶ月以上経ってからエラーになってしまったのでびっくり。

 

bbPress

bbPress

色々なプラグインと組み合わせることで、お手軽にフォーラムページが作れる便利なWordPressのプラグインです。

 

 

環境

  • bbPress 2.5.13
  • PHP 7.1.2

 

 

書き換え場所

bbpress/includes/functions.php 1800行目付近

 		/** Default ***********************************************************/

		// Get any existing post status
		$post_stati = $posts_query->get( 'post_status' );

		// Default to public status
		if ( empty( $post_stati ) ) {
			$post_stati[] = bbp_get_public_status_id();

		// Split the status string
		} elseif ( is_string( $post_stati ) ) {
			$post_stati = explode( ',', $post_stati );
		}


↓変更


		/** Default ***********************************************************/

		// Get any existing post status
		$post_stati = array(); //追加
		
		//$post_stati = $posts_query->get( 'post_status' ); //無効化
		$post_stati[] = $posts_query->get( 'post_status' ); //追加

		// Default to public status
		if ( empty( $post_stati ) ) {
			$post_stati[] = bbp_get_public_status_id();

		// Split the status string
		} elseif ( is_string( $post_stati ) ) {
			//$post_stati = explode( ',', $post_stati ); //無効化
			$post_stati[] = explode( ',', $post_stati ); //追加
		}

 

変数を配列に初期化して、代入される際に配列型に書き換えたら動きました。

PHP7環境だとよくあるエラーなので、プラグインが対応バージョンに更新されるまで覚えておくと凌げます。

 

お疲れ様です。

 

最新情報をチェックしよう!
>システム構築・保守に特化した会社です。

システム構築・保守に特化した会社です。

システムの構築・保守運用「システムガーディアン」 社内システム担当が欲しいが、専属で雇うほどの仕事量はない。 必要な時に必要なだけ頼りたいというお悩みを持つ企業様へ専門知識を持って対応を行っております。 サーバから各種システムまで自社・他社で構築されたシステムに対してサポートを行っております。

CTR IMG