Gibt es eine Möglichkeit, eine benutzerdefinierte Wartungsseite aus dem Themenordner hinzuzufügen?
Ich habe den Code für den aktivierten Wartungsmodus, aber ich kann das Styling nicht bekommen.
function activate_maintenance_mode() {
if ( !(current_user_can( 'administrator' ) || current_user_can( 'super admin' ))) {
wp_die(
'<h1>Website Under Maintenance</h1><p>Hi, our Website is currently undergoing scheduled maintenance.
Please check back very soon.<br /><strong>Sorry for the inconvenience!</strong></p>', 'Maintenance Mode');
}
}
add_action('get_header', 'activate_maintenance_mode');
Vielen Dank im Voraus, Nikola.
customization
maintenance
Nikola
quelle
quelle
Antworten:
Wenn WordPress in den Wartungsmodus wechselt, fügt es
.maintenance
dem Stammverzeichnis eine Datei mit dem Namen hinzu , während die Wartung durchgeführt wird, und wird anschließend entfernt. Sie können eine Funktion in Ihr Thema schreibenfunctions.php
, die nach dieser Datei sucht und eine benutzerdefinierte Wartungsseite aus dem Thema lädt.Fügen Sie Ihren Wartungsinhalt in die
maintenance.php
Seite in Ihrem Themenordner ein, und Sie können ihn nach Belieben formatieren.Wenn Sie die
wp_die
Funktion verwenden, erhalten Sie das weiße Standardfeld auf grauem Hintergrund. Auf diese Weise können Sie Ihre Wartungsseite wie jede andere Themenseite gestalten.UPDATE : Sie können dies auch außerhalb des Themas tun, indem Sie
maintenance.php
daswp-content
Verzeichnis (oder wo immer SieWP_CONTENT_DIR
darauf verweisen möchten) als Drop-In-Plugin hinzufügen . Wenn WP von innen nach dem Wartungsmoduswp_maintenance()
sucht, sucht es nach dieser Datei und lädt sie, falls vorhanden, oder lädt ihre eigene, wenn nicht. Wenn sich die Site nicht im Wartungsmodus befindet oder länger als 10 Minuten im Modus ist, wird 'wartung.php' nicht geladen, obwohl sich die Site technisch noch im Wartungsmodus befindet. WordPress 4.6 führt den Filter 'enable_maintenance_mode' ein , der von einem Tool (ab) verwendet werden kannwp-cli
, um die Prüfung für das Drop-In zu erzwingen, und mit dem Sie einen CLI-Befehl aus Ihrer Wartungsdatei ausführen können.quelle