Skip to:
Content
Pages
Categories
Search
Top
Bottom

Adding User Profile Button


  • vivnt
    Participant

    @vivnt

    I want to add a button that takes the user to their profile, similar to the login widget. However, I want to place it near the search bar on the “all forums” section or next to the subscribe button. I don’t want to place a widget on the sidebar because I want the forum to be full width. Can anyone help?

Viewing 12 replies - 1 through 12 (of 12 total)

  • Robin W
    Moderator

    @robin-w

    This should do what you want

    //add profile link to forums
    add_action ( 'bbp_template_before_single_forum', 'rew_profile_link' ) ;
    add_action ( 'bbp_template_before_forums_index', 'rew_profile_link' ) ;
    
    function rew_profile_link () {
    	if (!is_user_logged_in())
    		return ;
    	$current_user = wp_get_current_user();
    		$user=$current_user->user_nicename  ;
    		$user_slug =  get_option( '_bbp_user_slug' ) ;
    			if (get_option( '_bbp_include_root' ) == true  ) {	
    			$forum_slug = get_option( '_bbp_root_slug' ) ;
    			$slug = $forum_slug.'/'.$user_slug.'/' ;
    			}
    			else {
    			$slug=$user_slug . '/' ;
    			}
    			$edit_profile = __('Edit Profile', 'bbp-style-pack') ;
    			//get url
    			$url = get_site_url(); 
    			$profilelink = '<a href="'. $url .'/' .$slug. $user . '/edit">'.$edit_profile.'</a>';
    			echo '<div style="text-align: center;">'.$profilelink ;
    }

    add it to your functions file

    https://codex.bbpress.org/functions-files-and-child-themes-explained/


    Robkk
    Moderator

    @robkk

    Robin there is a few functions already in bbPress that might be useful to use, and it might cut some of your code some.

    http://hookr.io/plugins/bbpress/2.5.8/#index=u&search=bbp_user_profile


    Robin W
    Moderator

    @robin-w

    @robkk – I’m just trying to help someone, not trying to get the most efficient code 🙂


    vivnt
    Participant

    @vivnt

    @robin-w Thank you so much! I was wondering if you could help me just a bit more. I want to change the link to main profile page & add the avatar to the left of the link.


    Robin W
    Moderator

    @robin-w

    This code will do that

    //add profile link to forums
    add_action ( 'bbp_template_before_single_forum', 'rew_profile_link' ) ;
    add_action ( 'bbp_template_before_forums_index', 'rew_profile_link' ) ;
    
    function rew_profile_link () {
    	if (!is_user_logged_in())
    		return ;
    	$current_user = wp_get_current_user();
    	$user=$current_user->ID  ;
    	$profile = 'Profile' ;
    	$user_link = '<a href="' . esc_url( bbp_get_user_profile_url( $user) ) . '">' . $profile . '</a>';
    	echo '<div style="text-align: center;">'.$user_link.'</div>';
    }

    IndigoO
    Participant

    @indigoo

    Where would this code be added? I’m trying to do the same by adding it to my child theme’s bbpress.php file, but is just showing the raw code on the page. I may be in the wrong file, or else have something else missing. Thanks if you can direct.


    Robin W
    Moderator

    @robin-w

    yes it goes in the functions file of your child theme

    Functions files and child themes – explained !


    paul899
    Participant

    @paul899

    Thanks for advice. I’ve been looking for it, but nowhere can find it, hopefully here come across:) thanks


    IndigoO
    Participant

    @indigoo

    EDITED: I first added the second code snippet you provided, then realized I needed to other one, so I deleted that second snippet and used the first at the end of the functions.php file in my child theme. It does not place a small “edit profile” link centered at the top of my forum main page, which is a help (thanks), but it also places the following text at the bottom of my members home page when logged in: “Click edit button to change this code.”

    That is not a clickable link and it is also not in the right location. Also, I can’t see where that specific text is being defined to edit the wording, which I’d want if it was a working link. It would be great to also have the edit link on the members home page, not just the forum main page, or even better to be able to add it to the sidebar that shows on all member area pages, but at least I’d like to remove this text from the non-forum page.

    Thanks in advance if you can sort this.


    IndigoO
    Participant

    @indigoo

    I was trying to say, “It does NOW place a small edit link.” It is working on that page, just also putting that stray text on another page too.

    I did manage to change the placement of the “edit profile” link on the forum page to get it to be right align. I guess this only shows on the main forums page and individual forum pages, not on topic pages.

    All I really need to do now is to get the extra text removed from the other members area page it was added to.


    IndigoO
    Participant

    @indigoo

    Oh, wait. I got that one too! LOL

    I found that a code block had been added to my member home page by the second code snippet. I deleted that block and all good now.

    Thanks for your help!


    Robin W
    Moderator

    @robin-w

    great – glad you’re fixed !

Viewing 12 replies - 1 through 12 (of 12 total)
  • You must be logged in to reply to this topic.
Skip to toolbar