get_preview_post_link( int|WP_Post $post = null, array $query_args = array(), string $preview_link = '' ): string|null
Retrieves the URL used for the post preview.
Contents
Description
Allows additional query args to be appended.
Parameters
-
$post
int|WP_Post Optional -
Post ID or
WP_Post
object. Defaults to global$post
.Default:
null
-
$query_args
array Optional -
Array of additional query args to be appended to the link.
Default:
array()
-
$preview_link
string Optional -
Base preview link to be used if it should differ from the post permalink.
Default:
''
Return
string|null URL used for the post preview, or null if the post does not exist.
Source
File: wp-includes/link-template.php
.
View all references
function get_preview_post_link( $post = null, $query_args = array(), $preview_link = '' ) {
$post = get_post( $post );
if ( ! $post ) {
return;
}
$post_type_object = get_post_type_object( $post->post_type );
if ( is_post_type_viewable( $post_type_object ) ) {
if ( ! $preview_link ) {
$preview_link = set_url_scheme( get_permalink( $post ) );
}
$query_args['preview'] = 'true';
$preview_link = add_query_arg( $query_args, $preview_link );
}
/**
* Filters the URL used for a post preview.
*
* @since 2.0.5
* @since 4.0.0 Added the `$post` parameter.
*
* @param string $preview_link URL used for the post preview.
* @param WP_Post $post Post object.
*/
return apply_filters( 'preview_post_link', $preview_link, $post );
}
Hooks
-
apply_filters( 'preview_post_link',
string $preview_link ,WP_Post $post ) -
Filters the URL used for a post preview.
Changelog
Version | Description |
---|---|
4.4.0 | Introduced. |