BuddyPress a une fonction (bp_member_profile_data) qui extrait les données de profil dans une boucle de membres qui ressemble à ceci:
<?php
bp_member_profile_data( 'field=Organization' );
bp_member_profile_data( 'field=Brief Biography' );
/***
* If you want to show specific profile fields here you can,
* but it'll add an extra query for each member in the loop
* (only one regardless of the number of fields you show):
* bp_member_profile_data( 'field=the field name' ); */
?>
Je me demande comment limiter la longueur évoquée de Brief Biography. J'ai examiné l'exemple et le sous-programme Bavatosan, mais ils ne me permettent pas encore de savoir où les modifier.
Je pense que buddypress a une version get * de cette fonction qui renvoie la valeur au lieu de l'afficher à l'écran.
Il suffit donc de couper la chaîne retournée après un certain nombre de caractères, comme 50:
$profile_bio = bp_get_member_profile_data( 'field=Brief Biography' );
if(strlen($profile_bio) > 50))
$profile_bio = substr($profile_bio, 0, 50).'...';
echo $profile_bio;
S'il n'y a pas de fonction get, vous pouvez toujours utiliser la mise en mémoire tampon de sortie:
ob_start();
bp_member_profile_data( 'field=Brief Biography' );
$profile_bio = ob_get_clean();
// rest of the code is the same