我希望能够永久删除自定义文章类型中的文章,而不是先移到垃圾箱。 于是我在网上找到了一段据说可以实现这个功能的代码。 但是不知道为什么,我无法让它正常工作。
以下是我拥有的代码:
function directory_skip_trash($post_id) {
if (get_post_type($post_id) == 'directory') {
// Force delete
wp_delete_post( $post_id, true );
}
}
add_action('wp_trash_post', 'directory_skip_trash');
关于我的自定义文章类型的其余代码,您可以在我之前发布的这篇帖子中找到。
我可能错过了一些相当简单的东西。
更新
现在它已经有点起作用了。它实际上会删除该文章,但我会收到这个错误消息。 错误后,如果我回到文章页面,则该文章已消失且不在垃圾桶中。任何人都可能有解决方法,只需删除并不出现此消息吗?
wp_trash_post
作为你的钩子,尝试使用trashed_post
。问题在于wp_trash_post
发生在文章被移动到回收站之前。所以你是在删除文章后运行钩子,但由于文章已经不存在了,所以会出现错误。 - disinfor