- Stato
- Risolto
Panoramica del problema
Quando HyperDB è installato, potresti riscontrare il seguente errore durante la creazione di un duplicato di traduzione:
WordPress database error Field 'translator_id' doesn't have a default value for query INSERT INTO `wp_icl_translation_status` (`status`, `translation_id`) VALUES ('9', '3855') made by WPML_Post_Status::set_status
Il motivo è che HyperDB attiva modalità SQL incompatibili: ‘NO_ZERO_DATE’, ‘ONLY_FULL_GROUP_BY’, ‘STRICT_TRANS_TABLES’, ‘STRICT_ALL_TABLES’, ‘TRADITIONAL’. Queste modalità sono state dichiarate incompatibili a partire dalla versione WordPress 3.9 e successive, e sono disattivate nella classe wpdb standard.
Se queste modalità incompatibili sono impostate nelle impostazioni di MySQL sul tuo server e HyperDB è installato sul sito, si verificano errori durante la creazione di duplicati in WPML.
Il team di sviluppo di WPML mantiene il supporto per le funzionalità supportate ufficialmente da WordPress, motivo per cui una correzione per HyperDB non può essere inclusa nel codice del core di WPML.
Soluzione alternativa
Abbiamo creato un plugin speciale chiamato WPML HyperDB, che risolve il problema descritto sopra. Il plugin può essere scaricato qui