- Status
- Gelöst
- Gemeldet für
- WPML Multilingual for BuddyPress and BuddyBoss 1.7.0
- Gelöst in
- BuddyPress Multilingual 1.8.0
- Zugehöriges Plugin/Theme
- BuddyPress
Übersicht über das Problem
Das BuddyPress-Plugin ermöglicht es Ihnen, neue Profilfelder zu erstellen, die Sie mit dem Glue-Plugin BuddyPress Multilingual von WPML übersetzen können. Selbst wenn diese Felder jedoch in WPML → String-Übersetzung als übersetzt angezeigt werden, sind diese Übersetzungen im Frontend nicht sichtbar.
Problemumgehung
Bitte erstellen Sie ein vollständiges Backup Ihrer Website, bevor Sie fortfahren.
- Fügen Sie den folgenden Code zur Datei functions.php hinzu.
//WPML Workaround wpml_compsupp6144 add_filter( 'bp_get_the_profile_field_value', 'wpml_compsupp6144_translate_buddypress_profile_fields', 10, 3 ); function wpml_compsupp6144_translate_buddypress_profile_fields( $value, $type, $id ) { if ($type == 'textbox' || $type == 'wp-textbox' || $type == 'wp-biography') { //remove html tags from value and limit it's size, so we can use it as string name $filtered_value = substr(strip_tags($value), 0, 60); //register string do_action( 'wpml_register_single_string', 'BuddyPress Profile Fields', $type.' - '.$filtered_value , $value ); //translate string $value = apply_filters('wpml_translate_single_string', $value, 'BuddyPress Profile Fields', $type.' - '.$filtered_value ); } return $value; } - Rufen Sie die Profilseite im Frontend auf. Dadurch werden die Felder für die Übersetzung registriert.
- Gehen Sie zu WPML → String-Übersetzung und übersetzen Sie die Feldwerte unter der Domäne BuddyPress Profile Fields.
- Gehen Sie zurück zur Profilseite im Frontend. Die Felder sollten nun übersetzt sein.