bbp_get_favorites_permalink( int $user_id )

Return the link to the user’s favorites page (profile page)


Description Description


Parameters Parameters

$user_id

(Optional) User id


Top ↑

Return Return

(string) Permanent link to user profile page


Top ↑

Source Source

File: includes/users/template.php

	function bbp_get_favorites_permalink( $user_id = 0 ) {

		// Use displayed user ID if there is one, and one isn't requested
		$user_id = bbp_get_user_id( $user_id );
		if ( empty( $user_id ) ) {
			return false;
		}

		// Bail if intercepted
		$intercept = bbp_maybe_intercept( 'bbp_pre_get_favorites_permalink', func_get_args() );
		if ( bbp_is_intercepted( $intercept ) ) {
			return $intercept;
		}

		// Get user profile URL & page
		$profile_url = bbp_get_user_profile_url( $user_id );
		$page        = (int)  bbpress()->topic_query->paged;
		$paged       = (bool) bbpress()->topic_query->in_the_loop;

		// Pretty permalinks
		if ( bbp_use_pretty_urls() ) {

			// Base URL
			$url = trailingslashit( $profile_url ) . bbp_get_user_favorites_slug();

			// Add page
			if ( ( true === $paged ) && ( $page > 1 ) ) {
				$url = trailingslashit( $url ) . bbp_get_paged_slug() . '/' . $page;
			}

			// Ensure correct trailing slash
			$url = user_trailingslashit( $url );

		// Unpretty permalinks
		} else {

			// Base arguments
			$args = array(
				bbp_get_user_favorites_rewrite_id() => bbp_get_user_favorites_slug(),
			);

			// Add page
			if ( ( true === $paged ) && ( $page > 1 ) ) {
				$args['page'] = $page;
			}

			// Add arguments
			$url = add_query_arg( $args, $profile_url );
		}

		// Filter & return
		return apply_filters( 'bbp_get_favorites_permalink', $url, $user_id );
	}

Top ↑

Changelog Changelog

Changelog
Version Description
2.6.0 bbPress (r6308) Add pagination if in the loop
2.0.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.