2017-01-28 5 views
1

Я добавил это в свой файл functions.php, чтобы отключить доступ wp-admin для подписчиков. Сейчас он перенаправляет абонентов на первой странице, и я хотел бы, чтобы перенаправлять пользователей на складе 404. браузера можно изменить перенаправление на страницу, которая не существует ...WordPress: как перенаправить на 404?

wp_redirect(home_url('/fakepage')); 

... который выведет пользователя на ресурс браузера 404, но в URL-адрес будет отображаться несуществующая страница.

/** 
* Disable wp-admin access for subscribers 
*/ 
function disable_dashboard() { 
    if (!is_user_logged_in()) { 
     return null; 
    } 
    if (!current_user_can('administrator') && is_admin()) { 
     wp_redirect(home_url()); 
     exit; 
    } 
} 
add_action('admin_init', 'disable_dashboard'); 

ответ

0

Таким образом, чтобы быть ясно, вы хотите, чтобы пользователь будет отправлен на ваш адрес домашней страницы, но вместо того, чтобы видеть на главной странице они увидят сообщение 404?

Ничего себе, это звучит довольно неудобно, и я уверен, что вы действительно не хотите этого делать, если нет какой-то очень веской причины. Это было бы очень запутанно для пользователя.

Почему бы не просто сделать адрес вашей страницы 404 или пропуском каким-нибудь описательным, например,/404 или/not-found, и назвать это днем? Попытка перенаправить на главную страницу и показать другой контент, вероятно, потребует несколько тупых POST-переменных, которые вам нужно будет обнаружить на главной странице и изменить их на основе шаблона.