- Statut
- Résolu
- Signalé pour
- WPML Multilingual for BuddyPress and BuddyBoss 1.7.0
- Résolu dans
- BuddyPress Multilingual 1.8.0
- Extension/thème associé
- BuddyPress
Aperçu de l’anomalie
L’extension BuddyPress vous permet de créer de nouveaux champs de profil que vous pouvez traduire à l’aide de l’extension de liaison BuddyPress Multilingual de WPML. Cependant, même si ces champs apparaissent comme traduits dans WPML → Traduction de chaînes, ces traductions ne sont pas visibles sur l’interface publique.
Solution de contournement
Assurez-vous d’effectuer une sauvegarde complète de votre site avant de continuer.
- Ajoutez le code suivant au fichier functions.php.
//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; } - Visitez la page de profil sur le front-end. Cela enregistrera les champs pour la traduction.
- Accédez à WPML → Traduction de chaînes et traduisez les valeurs des champs dans le domaine BuddyPress Profile Fields.
- Retournez sur la page de profil sur le front-end. Les champs devraient maintenant être traduits.