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

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

При использовании плагина Advanced Custom Fields может возникнуть следующая фатальная ошибка. Эта ошибка наблюдается именно в PHP 8 или выше:


Fatal error: Uncaught TypeError: Illegal offset type in isset or empty in .../wp-content/plugins/sitepress-multilingual-cms/classes/core-abstract-classes/class-wpml-element-translation.php:259

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

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


  • Откройте файл …/wp-content/plugins/acfml/classes/class-wpml-acf-attachments.php.

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

  • Замените:
    			foreach ( $attachments as $key => $attachment_id ) {
    					$translated_attachments[ $key ] = apply_filters( 'wpml_object_id', $attachment_id, 'attachment', true );

  • На:
    			foreach ( $attachments as $key => $attachment_id ) {
    				if (is_int($attachment_id)) {
    					$translated_attachments[ $key ] = apply_filters( 'wpml_object_id', $attachment_id, 'attachment', true );
    				}

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