如何取消wp_trash_post内部的垃圾箱操作

时间:2016-04-20 作者:e4rthdog

我需要限制按钮"EMPTY TRASH" 并使其仅在登录用户是创建者时删除帖子。

我试着用wp_trash_post 我需要在函数中决定是否需要继续垃圾。

我如何告诉WordPress不要清空特定帖子中的垃圾?

1 个回复
SO网友:Nathan Johnson

可以利用pre_delete_post 过滤以缩短帖子的删除。

add_filter( \'pre_delete_post\', \'wpse_224246_pre_delete_post\', 10, 3 );
function wpse_224246_pre_delete_post( $delete, $post, $force_delete ) {
  //* Escape early if post isn\'t already trashed
  if( \'trash\' !== $post->post_status ) {
    return $delete;
  }
  //* Go ahead with deleting the post if the current user is the post author 
  if( get_current_user_id() === $post->post_author ) {
    return $delete;
  }
  //* Returning any other value besides null will short circuit the deletion
  return true;
}

相关推荐

Gutenberg通过wp.hooks.addFilter修改核心分类面板元素

我已经研究过修改现有的编辑器元素……但几乎没有。但我确实在Github得到了一个很好的回复,指出了这一点:https://github.com/WordPress/gutenberg/tree/master/packages/editor/src/components/post-taxonomies#custom-taxonomy-selector显然,分类小组可以通过wp.hooks.addFilter. 这是一个很好的开始!我已经能够使用该代码片段模拟一些虚拟代码,用Dashicon替换分类法面板。(