get_edit_post_link( int|WP_Post $id, string $context = 'display' )
Retrieves the edit post link for post.
Description Description
Can be used within the WordPress loop or outside of it. Can be used with pages, posts, attachments, and revisions.
Parameters Parameters
- $id
-
(int|WP_Post) (Optional) Post ID or post object. Default is the global
$post
. - $context
-
(string) (Optional) How to output the '&' character. Default '&'.
Default value: 'display'
Return Return
(string|null) The edit post link for the given post. null if the post type is invalid or does not allow an editing UI.
Source Source
File: wp-includes/link-template.php
function get_edit_post_link( $id = 0, $context = 'display' ) { $post = get_post( $id ); if ( ! $post ) { return; } if ( 'revision' === $post->post_type ) { $action = ''; } elseif ( 'display' == $context ) { $action = '&action=edit'; } else { $action = '&action=edit'; } $post_type_object = get_post_type_object( $post->post_type ); if ( ! $post_type_object ) { return; } if ( ! current_user_can( 'edit_post', $post->ID ) ) { return; } if ( $post_type_object->_edit_link ) { $link = admin_url( sprintf( $post_type_object->_edit_link . $action, $post->ID ) ); } else { $link = ''; } /** * Filters the post edit link. * * @since 2.3.0 * * @param string $link The edit link. * @param int $post_id Post ID. * @param string $context The link context. If set to 'display' then ampersands * are encoded. */ return apply_filters( 'get_edit_post_link', $link, $post->ID, $context ); }
Expand full source code Collapse full source code View on Trac
Changelog Changelog
Version | Description |
---|---|
2.3.0 | Introduced. |