How to prevent a post from being deleted?

Don’t let the action die, just do a redirect (to wherever you’d like):

function wpse_92155_before_delete_post() {
    wp_redirect(admin_url('edit.php'));
    exit();
} // function wpse_92155_before_delete_post
add_action('before_delete_post', 'wpse_92155_before_delete_post', 1);

Leave a Comment