Möchten Sie Ihren WordPress-Adminbereich in den Wartungsmodus versetzen, ohne die Website zu beeinträchtigen? Wahrscheinlich gibt es dafür ein Plugin, aber wir haben einen schnellen Code-Schnipsel erstellt, den Sie verwenden können, um den Wartungsmodus nur für Administratoren in WordPress zu aktivieren.
Anweisungen:
Sie müssen diesen Code nur zur functions.php-Datei Ihres Themes oder in ein websitespezifisches Plugin einfügen:
function admin_maintenace_mode() {
global $current_user;
get_currentuserinfo();
if($current_user->user_login != 'ADMIN_NAME') { ?>
<style> .updated{margin:30px !important;} </style><?
wp_die('<div id="message" class="updated"><p><b>Maintenance mode:</b> We are currently making updates. Everything will be online shortly.</p></div>');
}
}
add_action('admin_head', 'admin_maintenace_mode');
Vergessen Sie nicht, ADMIN_NAME im obigen Code durch den Benutzernamen Ihres WordPress-Admin-Kontos zu ersetzen.
Hinweis: Wenn Sie zum ersten Mal Code-Schnipsel in WordPress hinzufügen, lesen Sie bitte unseren Leitfaden, wie Sie Code-Schnipsel richtig in WordPress hinzufügen, damit Sie Ihre Website nicht versehentlich beschädigen.
Wenn Ihnen dieser Code-Schnipsel gefallen hat, ziehen Sie bitte in Betracht, unsere anderen Artikel auf der Website zu lesen, wie z. B.: 50+ beste responsive WordPress-Themes und Erstellen eines benutzerdefinierten Registrierungsformulars in WordPress.
Vielen Dank, Debjit Saha, für den tollen Schnipsel!
Ich erhalte die folgende Fehlermeldung, wenn ich sie in mein Plugin einfüge.
2020/04/29 13:08:35 [error] 1496#1496: *8 FastCGI sent in stderr: “PHP message: PHP ParseError: syntax error, unexpected end of file in /my/project/path/wp-content/plugins/a-plugin/a-plugin.php on line 55
Nachdem ich den Schnipsel wie folgt geändert hatte, funktionierte er ohne Probleme.
function admin_maintenace_mode() {
global $current_user;
get_currentuserinfo();
if($current_user->user_login != ‘ADMIN_NAME’) { ?>
.updated{margin:30px !important;} <?php
wp_die('Wartungsmodus: Wir nehmen gerade Updates vor. Alles ist in Kürze wieder online.');
}
}
add_action(‘admin_head’, ‘admin_maintenace_mode’);
Mit freundlichen Grüßen,
Michael Hochleitner
Das hätte rollenbasiert gemacht werden sollen, dann wäre es nutzbarer gewesen.
Sie könnten in diesem Fall den Wert $current_user->user_level überprüfen. Schauen Sie sich diesen Schnipsel hier an: https://www.isitwp.com/redirect-user-after-login/
Danke Kevin. Ich bin in einer ähnlichen Situation wie squarecandy. Ich möchte nicht, dass Leute ihre Website ändern, während ich sie zu meinem Webhosting-Unternehmen migriere.
Cool – danke.
Das hat bei mir funktioniert – ich wechsle zwischen Servern und wollte nicht, dass Benutzer ihre Websites bearbeiten, zwischen dem Zeitpunkt, an dem ich mit dem Kopieren von allem begann, und dem Zeitpunkt, an dem ich zum neuen Server wechselte.