Während des Umbaus einer WordPress-Site sollten Besucher vorübergehend auf eine HTML-Seite mit Kontaktinformationen des Unternehmens weitergeleitet werden. Getestete Maintenance-Plugins sahen keine Weiterleitung vor, oder erst eine für angemeldete Benutzer. Daher schrieben wir selbst schnell ein kleines Plugin das die Weiterleitung durchführte. Da es nur für ein paar Tage im Einsatz sein sollte, erhielt es nur das Nötigste an Ausstattung.
Die Loginseite ist von der template_redirect
-Action nicht betroffen, daher können sich nicht eingeloggte Benutzer weiterhin anmelden.
/**
* Plugin Name: Redirect Not Logged In Users
*/
/* wichtigste Bots nicht weiterleiten */
function flxo_is_search_bot() {
$is_search_bot = false;
$bots = array( 'Googlebot', 'Bingbot', 'Slurp', 'DuckDuckBot', 'Baiduspider', 'YandexBot' );
$is_search_bot = (bool) preg_match('~(' . join('|', array_values($bots)) . ')~i', $_SERVER['HTTP_USER_AGENT']);
return $is_search_bot;
}
function flxo_redirect() {
if ( ! is_user_logged_in() && false === flxo_is_search_bot() ){
wp_redirect( 'https://example.com/weiterleitung.html' );
exit();
}
}
add_action( 'template_redirect', 'flxo_redirect' );
Schreibe einen Kommentar