- Status
- Offen
- Gemeldet für
- WPML Multilingual CMS 4.6.13
- Themen-Tags
- Bug
Übersicht über das Problem
Benutzerdefinierte Felder mit komplexen Schlüsseln (z. B. mit Sonderzeichen wie Pipes |) werden in WPML möglicherweise nicht richtig übersetzt. Dies führt dazu, dass übersetzte Werte als serialisierte Arrays statt als einfache Strings gespeichert werden, was zu Problemen bei der Anzeige der übersetzten Werte benutzerdefinierter Felder führt.
Problemumgehung
Bitte stellen Sie sicher, dass Sie über ein vollständiges Website-Backup verfügen, bevor Sie fortfahren.
- Öffnen Sie die Datei …/sitepress-multilingual-cms/classes/translation-jobs/class-wpml-element-translation-package.php.
- Suchen Sie nach Zeile 260.
- Ersetzen Sie:
private function remove_field_name_from_start( $field_name, $field_id_string ) { return preg_replace( '#' . $field_name . '-?#', '', $field_id_string, 1 ); } - Durch:
private function remove_field_name_from_start( $field_name, $field_id_string ) { return preg_replace( '#' . preg_quote($field_name) . '-?#', '', $field_id_string, 1 ); }