@HarpSerg

Как исправить ошибку: Warning: Invalid argument supplied for foreach() in /var/www/.../data/www/mysite/wp-includes/blocks.php on line 253?

При переносе сайта на wordpress с локального сервера на хостинг появилась ошибка:

Warning: Invalid argument supplied for foreach() in /var/www/.../data/www/mysite/wp-includes/blocks.php on line 253


Несколько строк - все одинаковые. Не на всех страницах - на главной все нормально.
В админке на страницах статей - те же ошибки. Отображение текстов статей полетело. На локальном сервере все нормально было. Сначала и после переноса все было в норме. Заново перенес - та же проблема.

253 строка в blocks.php:

foreach ( $block['innerContent'] as $chunk ) {
		$block_content .= is_string( $chunk ) ? $chunk : render_block( $block['innerBlocks'][ $index++ ] );
	}


Плагины новые не добавлял. Подскажите, пожалуйста, как решить.
  • Вопрос задан
  • 213 просмотров
Решения вопроса 1
@HarpSerg Автор вопроса
Найденное решение:

if ( is_array( $block['innerContent'] ) ) {
foreach ( $block['innerContent'] as $chunk ) {
$block_content .= is_string( $chunk ) ? $chunk : render_block( $block['innerBlocks'][ $index++ ] );
}
}

Деформация отображения текстов статей вылечилась удалением старых статей и созданием аналогичных новых.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@TMProject
Это баг движка WP проявляется начиная с версии PHP 7.2,
Понизь версию до 7.1 и должно работать
Ответ написан
@Nujabes37
:DEATH
Добавь проверку
if ( is_array( $block['innerContent'] ) ) {
		foreach ( $block['innerContent'] as $chunk ) {
		$block_content .= is_string( $chunk ) ? $chunk : render_block( $block['innerBlocks'][ $index++ ] );
	}
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
22 окт. 2019, в 00:09
3500 руб./за проект
21 окт. 2019, в 22:35
500 руб./за проект