您需要更快地中断提交后的过程。您的代码连接到admin_init
经过一两次修改后,很有可能工作wp_die
这很严厉。如果是我,我只会重定向回原始页面而不保存。
有点像(未经测试)。。。
function check_post_limit() {
if (!isset($_POST[\'ID\'])) return;
global $wpdb;
if( $userdata->ID != 1) {
$post_count = $wpdb->get_var( "SELECT count(*) FROM $wpdb->posts WHERE DATE(post_modified) = DATE(NOW()) AND post_author = $userdata->ID" );
}
if( isset($post_count) && $post_count > 3 ) {
wp_safe_redirect(admin_url(\'post.php?post=\'.$_POST[\'post_ID\'].\'&action=edit\'));
exit;
}
}
几点注意事项:
编写的代码可能会向ID==1的用户发出通知,因为$post_count
不会设置检查用户ID==1有问题。假设你的管理员(我假设你想要这个)有其他ID(为了安全起见,让你的管理员有其他ID可能是个好主意)。我将根据用户角色编写检查