Cum se obține link-ul de profil BuddyPress și un câmp specific din profilul autorului curent al postării?

26 feb. 2012, 05:45:15
Vizualizări: 35.9K
Voturi: 19

Vreau să înlocuiesc get_author_link() și get_the_author_meta($field)

cu ceva echivalent care să trimită către pagina de profil BuddyPress a autorului postării curente și să preia un câmp specific din pagina sa BuddyPress

adică, vreau doar să afișez un link către profilul de utilizator al autorului postării și o biografie dintr-unul din câmpurile sale de profil BP

Nu sunt sigur ce funcții ar trebui să folosesc pentru asta... Documentația BuddyPress nu este încă foarte clară spre deosebire de WP Codex...

mulțumesc

0
Toate răspunsurile la întrebare 3
0
24

Pentru un link către profilul unui autor, folosește

bp_core_get_user_domain( $user_id )

pentru a obține URL-ul, și

bp_core_get_userlink( $user_id )

pentru a obține un element HTML de tip link, care include și numele afișat.

Pentru datele din xprofile, folosește

xprofile_get_field_data( $field, $user_id )

$field poate fi fie numele câmpului (cum ar fi 'Biografie') fie ID-ul numeric al câmpului.

13 mar. 2012 00:36:28
0

Este un pic diferit, dar deoarece acest subiect apare primul pe Google, ar putea fi util pentru altcineva.

Pentru a obține linkul profilului utilizatorului autentificat în prezent, pur și simplu folosește bp_loggedin_user_domain()

Sper că acest lucru vă ajută.

30 iul. 2015 18:04:56
0

Dacă trebuie să-l adăugați în comentarii:

    <?php
$author_id = get_comment(get_comment_ID())->user_id;
if (function_exists('bp_get_profile_field_data')) {
    $bp_name = bp_core_get_userlink( $author_id );
    $bp_location = bp_get_profile_field_data('field=Location&user_id='.$author_id);
    if ($bp_name) {
    echo '<div>'. $bp_name . '</div>';
    }
    if ($bp_location) {
    echo '<div class="authorinfo">'. $bp_location . '</div>';
    }
}
?>

Am inclus un exemplu de câmp de profil 'location', care poate fi eliminat. Acest cod este pentru afișarea unui link către profilul Buddypress al autorului comentariului. Trebuie plasat în interiorul buclei de comentarii, care va arăta aproximativ astfel:

foreach($comments as $comment)
15 oct. 2013 19:33:46