web-dev-qa-db-ja.com

著者リンクの宛先をBuddyPressメンバープロフィールに変更

デフォルトでは、投稿の著者をクリックすると、WPから次のことが指示されます。

example.com/author/sample-user/

ただし、BuddyPressユーザーにとっては、ユーザーを作成者のBuddyPressプロファイルページに誘導する方がはるかに理にかなっています。

example.com/members/sample-user/

誰もがこれを行う方法を知っていますか?ありがとうございます。

更新私は次のコードを試しています

add_filter( 'author_link', 'change_author_link', 10, 1  );

function change_author_link($link) {

$link = 'http://asiaforum.club/members/' . $author_ID;
return $link;
}

しかし、私はwordpressに作者のユーザーIDを取得させることはできません。それをどのように行うか(またはこの方法でうまくいくか)について何か考えはありますか?

1
Ashley Liu

以下のコードはうまくいきました。私は私の子供のテーマのfunctions.phpに追加しました

  add_filter( 'author_link', 'change_author_link', 10, 1  );

  function change_author_link($link) {
   $username=get_the_author_meta('user_nicename');


  $link = 'http://example.com/members/' . $username;
   return $link;
 }
1
Ashley Liu

より堅牢なアプローチ:

function change_author_link($link) {

   $user_id = get_the_author_meta('ID');

   return bp_core_get_user_domain( $user_id );
}
add_filter( 'author_link', 'change_author_link', 10, 1  );
0
shanebp