get_preview_post_link( int|WP_Post $post = null, array $query_args = array(), string $preview_link = '' )
Retrieves the URL used for the post preview.
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 value: null
- $query_args
-
(array) (Optional) Array of additional query args to be appended to the link.
Default value: array()
- $preview_link
-
(string) (Optional) Base preview link to be used if it should differ from the post permalink.
Default value: ''
Return
(string|null) URL used for the post preview, or null if the post does not exist.
Source
File: wp-includes/link-template.php
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 ); }
Changelog
Version | Description |
---|---|
4.4.0 | Introduced. |
© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/get_preview_post_link