bbp_get_reply_url( int $reply_id, string $redirect_to = '' )

Return the paginated url to the reply in the reply loop

Description

Parameters

$reply_id

(int) (Optional) Reply id

$redirect_to

(string) (Optional) Pass a redirect value for use with shortcodes and other fun things.

Default value: ''

Return

(string) Link to reply relative to paginated topic

Source

File: bp-forums/replies/template.php

	function bbp_get_reply_url( $reply_id = 0, $redirect_to = '' ) {

		// Set needed variables
		$reply_id   = bbp_get_reply_id      ( $reply_id );
		$topic_id   = bbp_get_reply_topic_id( $reply_id );

		// Hierarchical reply page
		if ( bbp_thread_replies() ) {
			$reply_page = 1;

		// Standard reply page
		} else {
			$reply_page = ceil( (int) bbp_get_reply_position( $reply_id, $topic_id ) / (int) bbp_get_replies_per_page() );
		}

		$reply_hash = '#post-' . $reply_id;
		$topic_link = bbp_get_topic_permalink( $topic_id, $redirect_to );
		$topic_url  = remove_query_arg( 'view', $topic_link );

		// Don't include pagination if on first page
		if ( 1 >= $reply_page ) {
			$url = trailingslashit( $topic_url ) . $reply_hash;

		// Include pagination
		} else {
			global $wp_rewrite;

			// Pretty permalinks
			if ( $wp_rewrite->using_permalinks() ) {
				$url = trailingslashit( $topic_url ) . trailingslashit( $wp_rewrite->pagination_base ) . trailingslashit( $reply_page ) . $reply_hash;

			// Yucky links
			} else {
				$url = add_query_arg( 'paged', $reply_page, $topic_url ) . $reply_hash;
			}
		}

		// Add topic view query arg back to end if it is set
		if ( bbp_get_view_all() )
			$url = bbp_add_view_all( $url );

		return apply_filters( 'bbp_get_reply_url', $url, $reply_id, $redirect_to );
	}

Changelog

Changelog
Version Description
bbPress (r2679) Introduced.

Questions?

We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.