Admin-ajax.php 302错误Wordpress

Admin-ajax.php 302错误Wordpress,php,jquery,ajax,wordpress,conflict,Php,Jquery,Ajax,Wordpress,Conflict,我有一个Wordpress网站和两种用户。管理员和订阅者。如果订户试图访问wp管理区,我希望他重定向到该网站的主页。我有一个功能可以做到这一点,但当我尝试访问网站上的其他页面时,例如在某个地方发布评论,它会将主页加载到我当前所在的页面中,而不会发布评论和我所做的任何其他操作。从网络错误中我看到admin-ajax.php 302错误。我知道Wordpress对ajax使用了两个不同的钩子,一个用于管理端,另一个用于注销用户,这与我的问题有关,但我不知道如何修复它 function mt_redi

我有一个Wordpress网站和两种用户。管理员和订阅者。如果订户试图访问wp管理区,我希望他重定向到该网站的主页。我有一个功能可以做到这一点,但当我尝试访问网站上的其他页面时,例如在某个地方发布评论,它会将主页加载到我当前所在的页面中,而不会发布评论和我所做的任何其他操作。从网络错误中我看到admin-ajax.php 302错误。我知道Wordpress对ajax使用了两个不同的钩子,一个用于管理端,另一个用于注销用户,这与我的问题有关,但我不知道如何修复它

function mt_redirect_admin(){

if ( ! current_user_can( 'edit_events' ) ){
    wp_redirect( site_url() );
    exit;       
}
}
add_action( 'admin_init', 'mt_redirect_admin' );
提前感谢您的解答

已解决:

function mt_redirect_admin() {

if ( ! current_user_can( 'edit_events' ) && ( ! defined( 'DOING_AJAX' ) || ! DOING_AJAX ) ) {
    wp_redirect( site_url() ); 
    exit;
}
}

add_action( 'admin_init', 'mt_redirect_admin', 1 );