我有这段精彩的代码限制访问wp-admin登录页面,除非登录的用户是网站的管理员:
add_action( 'init', 'blockusers_init' );
function blockusers_init() {
if ( is_admin() && ! current_user_can( 'administrator' ) &&
! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
wp_redirect( home_url() );
exit;
}
}
我想添加另一个限制访问权限的功能,并执行相同的重定向到我的主页但是我的网站的特定页面。 但这不起作用:
add_action( 'init', 'blockusers_init' );
function blockusers_init() {
if ( is_admin() && ! current_user_can( 'administrator' ) &&
! ( defined( 'mysite.co.uk/shop' ) && DOING_AJAX ) ) {
wp_redirect( home_url() );
exit;
}
}
我并不感到惊讶,但我希望有人必须纠正代码才能执行此功能?
由于
答案 0 :(得分:1)
您可以将此添加到header.php文件中,以检查他们是否在页面上以及他们是否是管理员
if(is_page(PAGE_ID)){
current_user_can( 'manage_options' ){
---do redirect here or whatever else---
}
}
你也可以像你一样通过init动作创建加载函数。