- Stato
- Risolto
- Segnalato per
- WPML Multilingual for BuddyPress and BuddyBoss 1.7.0
- Risolto in
- BuddyPress Multilingual 1.8.0
- Plugin/tema correlato
- BuddyPress
Panoramica del problema
Il plugin BuddyPress ti permette di creare nuovi campi del profilo che puoi tradurre utilizzando il plugin di integrazione BuddyPress Multilingual di WPML. Tuttavia, anche se questi campi appaiono come tradotti in WPML → Traduzione stringhe, queste traduzioni non sono visibili nel front-end.
Soluzione alternativa
Assicurati di effettuare un backup completo del tuo sito prima di procedere.
- Aggiungi il seguente codice al file 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; } - Visita la pagina del profilo sul front-end. Questo registrerà i campi per la traduzione.
- Vai su WPML → Traduzione stringhe e traduci i valori dei campi nel dominio BuddyPress Profile Fields.
- Torna indietro alla pagina del profilo sul front-end. I campi dovrebbero ora essere tradotti.