WordPress Version: 6.2
/**
* Displays the edit post link for post.
*
* @since 1.0.0
* @since 4.4.0 The `$css_class` argument was added.
*
* @param string $text Optional. Anchor text. If null, default is 'Edit This'. Default null.
* @param string $before Optional. Display before edit link. Default empty.
* @param string $after Optional. Display after edit link. Default empty.
* @param int|WP_Post $post Optional. Post ID or post object. Default is the global `$post`.
* @param string $css_class Optional. Add custom class to link. Default 'post-edit-link'.
*/
function edit_post_link($text = null, $before = '', $after = '', $post = 0, $css_class = 'post-edit-link')
{
$post = get_post($post);
if (!$post) {
return;
}
$url = get_edit_post_link($post->ID);
if (!$url) {
return;
}
if (null === $text) {
$text = __('Edit This');
}
$link = '<a class="' . esc_attr($css_class) . '" href="' . esc_url($url) . '">' . $text . '</a>';
/**
* Filters the post edit link anchor tag.
*
* @since 2.3.0
*
* @param string $link Anchor tag for the edit link.
* @param int $post_id Post ID.
* @param string $text Anchor text.
*/
echo $before . apply_filters('edit_post_link', $link, $post->ID, $text) . $after;
}