Answers:
不要让动作死掉,只需进行重定向(到您想要的任何地方):
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);
我将钩子before_delete_post
用作防止删除的最后一层保护(使用@tf的解决方案,这是正确的答案)。
首先,从视线中删除“删除”选项。以下内容隐藏了“ 批量操作”和“ 清空垃圾箱”按钮,并删除了“ 永久删除”行操作。
使用此代码:
add_action( 'admin_head-edit.php', 'hide_delete_css_wpse_92155' );
add_filter( 'post_row_actions', 'hide_row_action_wpse_92155', 10, 2 );
add_filter( 'page_row_actions', 'hide_row_action_wpse_92155', 10, 2 );
function hide_delete_css_wpse_92155()
{
if( isset( $_REQUEST['post_status'] ) && 'trash' == $_REQUEST['post_status'] )
{
echo "<style>
.alignleft.actions:first-child, #delete_all {
display: none;
}
</style>";
}
}
function hide_row_action_wpse_92155( $actions, $post )
{
if( isset( $_REQUEST['post_status'] ) && 'trash' == $_REQUEST['post_status'] )
unset( $actions['delete'] );
return $actions;
}
结果如下:
没有钩子cpt_row_actions
。钩page_row_actions
和post_row_actions
被如果柱类型是分层的或不施加,分别。