Show badgeos achievements under avatar in bbpress

Status
Not open for further replies.

Divvy

Active Member
806
2009
18
0
Hello guys,

Anyone here familiar with badgeos, buddypress and bbpress?

If yes, maybe someone can help me.

I have found this code to place badges (achievements) under user avatar in bbpress:

Code:
add_filter( 'bbp_get_reply_author_link', 'my_append_badges_via_filter', 10, 2 );

function my_append_badges_via_filter($author_link = '', $args) {

    # Needed to get the user ID of the person intended to be displayed.
    $user_id = bbp_get_reply_author_id( $args['post_id'] );
    #Construct your output here.
    $badge_output = '';

    $achievements = badgeos_get_user_achievements( array( 'user_id' => $user_id ) );
    if ( !empty( $achievements ) ) {
            $badge_output .= '<div class="achievements">';
        foreach ( $achievements as $achievement ) {
                        if($achievement->post_type != 'badges')
                            continue;
            $badge_output .= '<div class="achievement achievement-' . $achievement->post_type . '">';
            //echo '<h2>' . get_the_title( $achievement->ID ) . '</h2>';
            $badge_output .= get_the_post_thumbnail( $achievement->ID, 'thumbnail', array('title'=>get_the_title( $achievement->ID ) ) );
            //echo __( 'Earned on: ', 'text-domain' ) . date( get_option( 'date_format' ), $achievement->date_earned ) ;
            $badge_output .= '</div>';
        }
            $badge_output .= '</div>';
  }
   
    return  $author_link . $badge_output;
}

The code is working perfectly, but the badges doesn't have a link to user achievements tab page.

For example, using buddypress, my url to user achievements page is:
Code:
http://domain.com/members/user/achievements/

Badgeos Docs: BadgeOS Documentation

Any idea how to do this?

Thank you in advance :)
 
Status
Not open for further replies.
Back
Top