WPML
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 );
    	}

Alle bekannten Probleme →