Deaktivieren Sie die Anmeldung der Benutzerrolle vorübergehend und ersetzen Sie sie durch eine Nachricht

Gibt es eine einfache Möglichkeit, eine Benutzerrolle, die sich mit WordPress anmeldet, vorübergehend zu stoppen?

Wenn ich zum Beispiel eine Benutzerrolle namens media habe , wie kann ich sie daran hindern, sich anzumelden?

Ich möchte, dass eine benutzerdefinierte Nachricht auf der Website angezeigt wird, z. B. “Website wird gewartet”.

So sieht es aus … http://img.daswordpress.com/user-roles/nDf7a.jpg

Der Grund dafür ist, dass meine Website mit dieser function vollständig von der Öffentlichkeit gesperrt ist …

// LOCK DOWN add_action('get_header', 'wpq_member_only_site'); function wpq_member_only_site() { // logged in users or visits to a specified page are allowed if ( !is_user_logged_in() ) { $redirect_after_login = get_home_url(); // the URL where login/registration takes place $login_url = wp_login_url( $redirect_after_login ); // redirect visitors wp_redirect( $login_url, 302 ); exit; } } 

Aber ich muss etwas warten und ich bin auf eine einfache Art und Weise, alle Benutzer, die die Rolle Medien sind zu sperren

Dies liegt daran, dass Administratoren und Redakteure immer noch Zugriff haben, aber keine Medien .

Kann jemand bitte helfen?

Danke, Josh

Solutions Collecting From Web of "Deaktivieren Sie die Anmeldung der Benutzerrolle vorübergehend und ersetzen Sie sie durch eine Nachricht"

Mit etwas Graben und Lernen habe ich es geschafft, verschiedene Hilfe zu kombinieren und diese 2 functionen zu erstellen …

 // MAINTAINANCE MODE function site_maintenance() { if ( current_user_can('media') || current_user_can('genpo') ) { $logout_url = wp_login_url().'?mode=maintainance'; wp_logout(); wp_redirect( $logout_url, 302 ); } } add_action('get_header', 'site_maintenance'); // CUSTOM LOGIN MESSAGES function my_login_message() { if( $_GET['mode'] == 'maintainance' ){ $message = '

Site undergoing maintainance.

'; return $message; } } add_filter('login_message', 'my_login_message');

Fügen Sie eine Überprüfung für eine function hinzu, die Administratoren und Redakteure teilen:

 add_action( 'get_header', 'wpse81659_maintenance' ); function wpse81659_maintenance() { if ( ! current_user_can( 'publish_pages' ) || ! is_user_logged_in() ) die( 'Site undergoing maintenance' ); } 

Ich habe ein einfaches Plugin erstellt, mit dem Sie das tun können, ohne mit Code herumzuspielen. Die Nachricht, die für behinderte Benutzer angezeigt wird, ist auch filterbar.

http://wordpress.org/plugins/disable-users/