get_delete_post_link() – Retrieves the delete posts link for post.

You appear to be a bot. Output may be restricted

Description

Retrieves the delete posts link for post.

Can be used within the WordPress loop or outside of it, with any post type.

Usage

$string|void = get_delete_post_link( $post, $deprecated, $force_delete );

Parameters

$post
( int|WP_Post ) optional – Optional. Post ID or post object. Default is the global `$post`.
$deprecated
( string ) optional – Not used.
$force_delete
( bool ) optional – Optional. Whether to bypass Trash and force deletion. Default false.

Returns

string|void The delete post link URL for the given post.

Source

File name: wordpress/wp-includes/link-template.php
Lines:

1 to 36 of 36
function get_delete_post_link( $post = 0, $deprecated = '', $force_delete = false ) {
  if ( ! empty( $deprecated ) ) {
    _deprecated_argument( get_delete_post_link, '3.0.0' );
  }

  $post = get_post( $post );

  if ( ! $post ) {
    return;
  }

  $post_type_object = get_post_type_object( $post->post_type );

  if ( ! $post_type_object ) {
    return;
  }

  if ( ! current_user_can( 'delete_post', $post->ID ) ) {
    return;
  }

  $action = ( $force_delete || ! EMPTY_TRASH_DAYS ) ? 'delete' : 'trash';

  $delete_link = add_query_arg( 'action', $action, admin_url( sprintf( $post_type_object->_edit_link, $post->ID ) ) );

  
/**
 * Filters the post delete link.
 *
 * @since 2.9.0
 *
 * @param string $link         The delete link.
 * @param int    $post_id      Post ID.
 * @param bool   $force_delete Whether to bypass the Trash and force deletion. Default false.
 */
  return apply_filters( 'get_delete_post_link', wp_nonce_url( $delete_link, "$action-post_{$post->ID}" ), $post->ID, $force_delete );
}
 

 View on GitHub View on Trac