現在の投稿者のbuddypressユーザープロファイルリンクと特定のユーザープロファイルフィールドを取得する方法は?


16

get_author_link()とget_the_author_meta($ feld)を置き換えたい

現在の投稿Buddypressユーザープロフィールページの作成者を指し、Buddypressページから特定のプロフィールフィールドを取得することに相当するもの

つまり、投稿ユーザープロファイルへのリンクと、BPプロファイルフィールドの1つからの伝記を表示したいだけです。

どの機能をこれに使用すべきかわからない... WP Codexとは異なり、BuddyPressのドキュメントはまだあまり明確ではない...

ありがとう

回答:


20

著者のプロフィールリンクには、

bp_core_get_user_domain( $user_id )

URLを取得し、

bp_core_get_userlink( $user_id )

表示名を含むHTMLリンク要素を取得します。

xprofileデータには、次を使用します

xprofile_get_field_data( $field, $user_id )

$field フィールドの名前(「Biography」など)または数値フィールドIDのいずれかです。


3

少し違いますが、このスレッドはGoogleで最初に表示されるので、他の人に役立つかもしれません。

現在のログインユーザープロファイルリンクを取得するには、単に使用します bp_loggedin_user_domain()

お役に立てば幸いです。


2

コメントに追加する必要がある場合:

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

削除される可能性のあるサンプルのプロファイルフィールド「場所」を含めました。これは、著者のバディプレスのプロフィールへのコメントへのリンクを表示するためのものです。コメントループ内に配置する必要があり、次のようになります。

foreach($comments as $comment)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.