WPML
Статус
Решено
Заявлено для
Advanced Custom Fields Multilingual 2.1.1
Решено в
Advanced Custom Fields Multilingual 2.1.2
Связанный плагин/тема
Advanced Custom Fields (ACF)
Теги темы
Compatibility

Обзор проблемы

Если Вы используете плагин Advanced Custom Fields, Вы можете столкнуться с фатальной ошибкой в средах с PHP 8 или с предупреждениями в PHP 7 при сохранении записей, содержащих поля повторителя, если включена функция «ACFML Synchronise translations».

Fatal error: Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, WP_Post given in .../wp-content/plugins/acfml/classes/Helper/HashCalculator.php on line 65

Обходное решение

Пожалуйста, перед продолжением убедитесь, что у Вас есть полная резервная копия сайта.

Вариант 1


  • Отключите параметр Сохранять одинаковый порядок для повторяющихся и гибких подполей как в языке по умолчанию и обновите запись.

Если это невозможно, то:

Вариант 2


  • Откройте файл …/wp-content/plugins/acfml/classes/Helper/HashCalculator.php.

  • Найдите строку 25.

  • Замените:
    return self::hashArray( $value );


  • На:
    return self::hashArray( (array) $value );

Все известные проблемы →