Eine Wordpress-Seite vor der Öffentlichkeit zu schützen und nur für Freunde oder Familie zugänglich zu machen ist nicht leicht, aber mit den richtigen Plugins klappt's.
Überschreiben der Default-Login Seite in Wordpress:
//Logo auf die Domain verlinken
function my_login_logo_url() {
return home_url();
}
add_filter( 'login_headerurl', 'my_login_logo_url' );
//Titel für Logo vergeben
function my_login_logo_url_title() {
return 'SWISSANGEL';
}
add_filter( 'login_headertitle', 'my_login_logo_url_title' );
//Eigene CSS Datei einbinden um Optik anzupassen
function my_login_stylesheet() {
wp_enqueue_style( 'custom-login', get_stylesheet_directory_uri() . '/style-login.css' )
}
add_action( 'login_enqueue_scripts', 'my_login_stylesheet' );
// Zugriff auf /wp-admin für nicht Admins blockieren - Umleiten auf Startseite
function custom_blockusers_init() {
if ( is_user_logged_in() && is_admin() && !current_user_can( 'administrator' ) ) {
wp_redirect( home_url() );
exit;
}
}
add_action( 'init', 'custom_blockusers_init' ); // Hook into 'init'
Die folgenden Plugins benötigt man um Wordpress auch beizubringen das nur registrierte Nutzer Zugriff haben.
"Members" dekativiert alle Seiten für Gäste und leitet sie auf die wp-login.php um.
"New Users Aprove" stellt sicher das nur die Nutzer Zugriff erhalten die von einem Admin freigeschaltet wurden.
"My Custom Functions" ermöglicht es Skripte (wie oben) in die funktions.php einzutragen ohne das man ein Child-Theme anlegen muss
Plugins:
- Members
https://de.wordpress.org/plugins/members/ - New User Aprove
https://de.wordpress.org/plugins/new-user-approve/ - My Custom Functions
https://de.wordpress.org/plugins/my-custom-functions/