删除用户时删除所有自定义帖子类型

时间:2013-11-21 作者:varundev

delete all custom post type when delete user

我在自定义帖子类型方面有一个问题,当我删除用户时,我无法删除那里的帖子或为所有帖子添加属性。

4 个回复
SO网友:bueltge

如果要删除自定义帖子,如果要杀死用户,请在delete_user 钩这个钩子允许您调用操作和执行其他作业,例如删除此用户id的帖子。

请参见codex 有关更多信息和示例源。

SO网友:Bysander

我在我的网站上使用自定义帖子,一旦用户被删除,他们的所有自定义帖子也会被删除。

您确定在您的代码中,用户ID是这些帖子的正确作者吗?根据其编码方式,作者最终可能成为管理员。我以前在自定义帖子审核中看到,作者实际上存储为一个单独的元标记,但wordpress认为作者实际上是批准它的管理员。

这取决于你的主题是如何写的,以及网站上的其他功能是如何工作的。

我建议您查看其中一篇自定义帖子,以确定注册作者是谁,如果不同,您需要在delete_useras suggested by @bueltge 并删除找到的带有author meta标记==user的帖子

SO网友:Martin Hlaváč

1) 您要删除的帖子类型必须有作者的活动字段(register_post_type -> 支持->作者)。

2) 或者您可以使用post_types_to_delete_with_user 过滤器,请参阅:

add_filter("post_types_to_delete_with_user", "post_types_to_delete_with_user_callback", 10, 2);

function post_types_to_delete_with_user_callback(array $postTypesToDelete, $userId) {
  $postTypesToDelete[] = "YOUR_POST_TYPE_KEY";
  return $postTypesToDelete;
}

SO网友:Espagnet

我为那些像我一样经过这里却没有找到解决方案的人添加了一个答案。

请勿写入:

\'support\' => array(\'title\', \'author\'),
相反,不要忘记s:

\'supports\' => array(\'title\', \'author\'),

结束

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register