Salta la navigazione

Questo thread è stato risolto. Ecco una descrizione del problema e della soluzione.

Problem:
Stai cercando di attivare WPML versione 4.7.3 su WordPress versione 6.7.2 con WooCommerce versione 9.7.1 e incontri un errore fatale quando aggiorni a PHP 8.2. L'errore è: 'PHP Fatal error: Uncaught TypeError: call_user_func_array(): Argument #1 ($callback) must be a valid callback, cannot access private method WPML_TM_ICL20_Migration_Notices::build_migration_required()'.
Solution:
L'errore non è direttamente legato a PHP 8.2, ma alle impostazioni di I Can Localize. Ecco i passaggi per risolverlo:
1. Apri il file

wp-content/plugins/sitepress-multilingual-cms/classes/ICL-20-migration/ui/class-wpml-tm-icl20-migration-notices.php

e vai alla riga 169.
2. Modifica

private function build_migration_required()

in

public function build_migration_required()

.
3. In WPML > Gestione Traduzioni > Strumenti, disattiva i servizi di traduzione, se presenti.
4. In WPML > Supporto > Risoluzione dei problemi, clicca su 'Reimposta lo stato delle traduzioni professionali'.

Se questa soluzione non risolve il problema o sembra non essere più rilevante, ti consigliamo di verificare le questioni note, controllare la versione della correzione permanente e assicurarti di avere installato le ultime versioni dei temi e dei plugin. Se il problema persiste, ti invitiamo a aprire un nuovo ticket di supporto.

Questo è il forum di assistenza tecnica di WPML, il plug-in multilingue di WordPress.

La sua lettura è permessa a tutti, ma la pubblicazione è riservata esclusivamente ai clienti di WPML. Il team di WPML risponde sul forum 6 giorni su 7, 22 ore su 24.

Etichettato: 

Questo ticket contiene 1 risposta, ha 0 voci.

Ultimo aggiornamento da Laura 2 settimana, 4 giorno fa.

Assistito da: Laura.

Autore Messaggi
Aprile 10, 2025 a 9:11 am #16917335

francescoE-2

Contesto del problema:
Sto cercando di attivare l'ultima versione di WPML Versione 4.7.3 su WordPress Versione 6.7.2 con WooCommerce Versione 9.7.1. Il problema si verifica quando aggiorno la versione PHP a 8.2. Link al sito: link nascosto

Sintomi:
Quando aggiorno a PHP 8.2, ricevo un errore fatale: 'PHP Fatal error: Uncaught TypeError: call_user_func_array(): Argument #1 ($callback) must be a valid callback, cannot access private method WPML_TM_ICL20_Migration_Notices::build_migration_required() in /web/htdocs/www.defalco.it/home/wp-includes/class-wp-hook.php:324'.

Domande:
Perché l'aggiornamento a PHP 8.2 causa un errore fatale?
Come posso risolvere l'errore fatale con WPML e PHP 8.2?

Aprile 10, 2025 a 1:25 pm #16918834

Laura
Sostenitore di WPML dal 05/2018

Lingue: Inglese (English ) Italiano (Italiano )

Fuso orario: Europe/Rome (GMT+02:00)

Salve,

grazie per averci contattato.

L'errore segnalato non è relativo a PHP 8.2 ma è relativo alle impostazioni di I Can Localize, un servizio di traduzione.

Puoi risolvere così
1. apri wp-content/plugins/sitepress-multilingual-cms/classes/ICL-20-migration/ui/class-wpml-tm-icl20-migration-notices.php e vai alla riga 169
2. modifica

private function build_migration_required()

in

public function build_migration_required()

3. in WPML > Gestione Traduzioni > Strumenti disattiva i servizi di traduzione, se ce ne sono
4. in WPML > Supporto > risoluzione dei problemi clicca su Reimposta lo stato delle traduzioni professionali