Panoramica del problema
Il seguente errore fatale può verificarsi quando si utilizza il plugin Advanced Custom Fields. L’errore si verifica in particolare con PHP 8 o versioni successive:
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
Soluzione alternativa
Questo problema è stato risolto in Advanced Custom Fields Multilingual 2.1.0. L'aggiornamento risolve il problema sul tuo sito, quindi hai bisogno di questa soluzione alternativa solo se non puoi ancora aggiornare.
Assicurati di avere un backup completo del tuo sito prima di procedere.
- Apri il file …/wp-content/plugins/acfml/classes/class-wpml-acf-attachments.php.
- Cerca la riga 28.
- Sostituisci:
foreach ( $attachments as $key => $attachment_id ) { $translated_attachments[ $key ] = apply_filters( 'wpml_object_id', $attachment_id, 'attachment', true ); - Con:
foreach ( $attachments as $key => $attachment_id ) { if (is_int($attachment_id)) { $translated_attachments[ $key ] = apply_filters( 'wpml_object_id', $attachment_id, 'attachment', true ); }