get_page_link( int|WP_Post $post = false, bool $leavename = false, bool $sample = false ): string

Retrieves the permalink for the current page or page ID.

Description

Respects page_on_front. Use this one.

Parameters

$postint|WP_Postoptional
Post ID or object. Default uses the global $post.

Default:false

$leavenamebooloptional
Whether to keep the page name.

Default:false

$samplebooloptional
Whether it should be treated as a sample permalink.

Default:false

Return

string The page permalink.

Source

function get_page_link( $post = false, $leavename = false, $sample = false ) {	$post = get_post( $post );	if ( 'page' === get_option( 'show_on_front' ) && (int) get_option( 'page_on_front' ) === $post->ID ) {	$link = home_url( '/' );	} else {	$link = _get_page_link( $post, $leavename, $sample );	}	/** * Filters the permalink for a page. * * @since 1.5.0 * * @param string $link The page's permalink. * @param int $post_id The ID of the page. * @param bool $sample Is it a sample permalink. */	return apply_filters( 'page_link', $link, $post->ID, $sample ); } 

Hooks

apply_filters( ‘page_link’, string $link, int $post_id, bool $sample )

Filters the permalink for a page.

Changelog

VersionDescription
1.5.0Introduced.

User Contributed Notes

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