it-swarm.com.de

Wie bekomme ich einen BuddyPress-Benutzerprofil-Link und ein bestimmtes Benutzerprofil-Feld für den aktuellen Beitragsautor?

Ich möchte get_author_link () und get_the_author_meta ($ feld) ersetzen

mit einer Entsprechung, die auf den Autor der aktuellen Buddypress-Benutzerprofilseite verweist und ein bestimmtes Profilfeld von seiner Buddypress-Seite abruft

ich möchte also nur einen Link zum Post-Benutzerprofil und eine Biografie aus einem seiner BP-Profilfelder anzeigen

Ich bin mir nicht sicher, welche Funktionen ich dafür verwenden soll ... Die BuddyPress-Dokumentation ist im Gegensatz zum WP Codex immer noch nicht sehr klar ...

vielen Dank

12
unfulvio

Verwenden Sie für den Profillink eines Autors

bp_core_get_user_domain( $user_id )

um die URL zu erhalten, und

bp_core_get_userlink( $user_id )

um ein HTML-Link-Element einschließlich des Anzeigenamens abzurufen.

Verwenden Sie für die xprofile-Daten

xprofile_get_field_data( $field, $user_id )

$field kann entweder der Name des Feldes (wie 'Biografie') oder die numerische Feld-ID sein.

17
Boone Gorges

Es ist ein bisschen anders, aber da dieser Thread zuerst bei Google erscheint, kann er für andere nützlich sein.

Verwenden Sie einfach bp_loggedin_user_domain(), um den Link zum aktuell angemeldeten Benutzerprofil abzurufen.

Hoffentlich hilft das.

2
Buzut

Wenn Sie es in den Kommentaren hinzufügen müssen:

    <?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>';
    }
}
?>

Ich habe ein Beispielprofilfeld 'Ort' eingefügt, das entfernt werden kann. Hiermit wird ein Link zum Buddypress-Profil des Kommentars angezeigt. Es muss in die Kommentarschleife eingefügt werden, die ungefähr so ​​aussieht:

foreach($comments as $comment)
1
Lorelei Carson