Beiträge von dea1h85

    Hallo zusammen,

    um meinen Wordpress Backend Login-Bereich abzusichern, habe ich ein kleines Snippet in die 'functions.php' des Child-Themes eingefügt.
    Bei falscher Eingabe von User Name oder Passwort soll eine Weiterleitung an eine externe URL erfolgen.

    Leider passiert das nicht. Es erscheint lediglich eine fast leere Seite (auf meiner Domain) mit dem WP-Logo mittig zentriert.

    Hier der Code, in der Hoffnug ihr könnt mir einen Tipp geben, warum es scheintert.

    [COLOR=#ff8000]if ( ! function_exists( 'ah_redirect_after_login_errors' ) ) :[/COLOR]
    [COLOR=#59b300]/**
    * Redirect auf Google nach falscher Eingabe der WP-Zugangsdaten
    */[/COLOR]
    [COLOR=#ff8000]function ah_redirect_after_login_errors() {

    wp_redirect( 'https://www.google.de' );
    exit;
    }
    add_filter( 'login_errors', 'ah_redirect_after_login_errors' );
    endif;[/COLOR]

    Muss vlt. noch an anderer Stelle etwas eingestellt werden? Kann meine Funktion für die Weiterleitung nicht über den Hook eingefügt werden? Ich bin leider kein Informatiker, starte gerade mit Wordpress und möchte meinen Blog vor Erstellung so sicher wie möglich machen. Die hier aufgezeigte Maßnahme ist also nur eine von vielen anderen Anpassungen, die ich bereits in der htaccess, der wp-config und auch in der functions.php eingestellt habe.

    Kann es sein, dass das Setzen des Hooks für den wp_redirect blockiert wird, weil dieser Code z.B. mit einem anderen Snippet in der functions.php kolidiert?
    Ich habe z.B. auch noch eine Einstellung vorgenommen, sodass der Login nicht mehr mit dem Benutzernamen möglich ist, sondern nur mit einer E-Mail-Adresse.

    [COLOR=#59b300]//WordPress Authentifikation löschen[/COLOR]
    [COLOR=#ff8000]remove_filter('authenticate', 'wp_authenticate_username_password', 20);[/COLOR]

    [COLOR=#59b300]// Neue Authentifikation setzen - Anmelden nur mit E-Mail und Passwort[/COLOR]
    [COLOR=#ff8000]add_filter('authenticate', function($user, $email, $password){[/COLOR]

    [COLOR=#59b300] //Check for empty fields[/COLOR]
    [COLOR=#ff8000] if(empty($email) || empty ($password)){
    [COLOR=#59b300] //create new error object and add errors to it.[/COLOR][/COLOR]
    [COLOR=#ff8000] $error = new WP_Error();

    if(empty($email)){ [/COLOR][COLOR=#59b300]//No email[/COLOR]
    [COLOR=#ff8000] $error->add('empty_username', __('<strong>FEHLER</strong>: Das E-Mail Feld ist leer.'));
    }
    else if(!filter_var($email, FILTER_VALIDATE_EMAIL)){[/COLOR] [COLOR=#59b300]//Invalid Email[/COLOR]
    [COLOR=#ff8000] $error->add('invalid_username', __('<strong>FEHLER</strong>: Die E-Mail-Adresse ist ungültig'));
    }

    if(empty($password)){ [/COLOR][COLOR=#59b300]//No password[/COLOR]
    [COLOR=#ff8000] $error->add('empty_password', __('<strong>FEHLER</strong>: Das Passwort-Feld ist leer.'));
    }

    return $error;
    }[/COLOR]

    [COLOR=#59b300] //Check if user exists in WordPress database[/COLOR]
    [COLOR=#ff8000] $user = get_user_by('email', $email);[/COLOR]

    [COLOR=#59b300]//bad email[/COLOR]
    [COLOR=#ff8000] if(!$user){
    $error = new WP_Error();
    $error->add('invalid', __('<strong>FEHLER</strong>: Deine Eingaben sind ungültig.'));
    return $error;
    }
    else{[/COLOR] [COLOR=#59b300]//check password[/COLOR]
    [COLOR=#ff8000]if(!wp_check_password($password, $user->user_pass, $user->ID)){[/COLOR] [COLOR=#59b300]//bad password[/COLOR]
    [COLOR=#ff8000] $error = new WP_Error();
    $error->add('invalid', __('<strong>FEHLER</strong>: Deine Eingaben sind ungültig.'));
    return $error;
    }else{
    return $user; [/COLOR][COLOR=#59b300]//passed[/COLOR]
    [COLOR=#ff8000] }
    }
    }, 20, 3);[/COLOR]

    Hallo zusammen,

    ich bin neu hier. Neu ist für mich auch der Umgang mit Wordpress und CSS.

    Ich möchte den Header meines verwendeten "free" oceanwp Theme mit CSS bzw. einem Custom JS erweitern. Teilweise funktioniert es auch schon.
    Allerdings habe ich noch eine Hürde zu meistern. Aus dem unten eingefügten Script funktioniert folgender Befehl nicht:

    document.getElementById("site-header").getElementsByClassName("minimal-header effect-seven clr")[0].style.data-height = "30";

    Mit dem Script unten möchte ich erreichen, dass sich die Höhe des Headers, die Größe des Logos, die Größe der einzelenen Menüpunkte verkleinert und sich die Hintergrundfarbe ändert, sobald man nach unten scrollt.

    Außerdem habe ich den Header mit dem CSS-Code fixiert:

    * #site-header {
    position: fixed;
    width: 100%;
    top: 0;
    }

    Ich hoffe meine Wortwahl ist korrekt. Wenn Ihr Rückfragen habt, lasst es mich bitte wissen. Über ein Feedback wäre ich euch dankbar.

    Gruß

    ====================================================================
    // When the user scrolls down 80px from the top of the document, resize the navbar's padding and the logo's font size

    [PLAIN]window.onscroll = function() {scrollFunction()};

    function scrollFunction() {
    if (document.body.scrollTop > 80 || document.documentElement.scrollTop > 80) {
    //document.getElementById("site-header").data-height="35";
    //document.getElementById("site-header").style.backgroundColor = "red";
    document.getElementById("site-header").getElementsByClassName("minimal-header effect-seven clr")[0].style.data-height = "30";
    document.getElementById("site-header").style.padding = "0px 0px 0px 0px";
    document.getElementById("custom-logo").style.fontSize = "15px";
    } else {
    //document.getElementById("site-header").data-height="72";
    document.getElementById("site-header").style.backgroundColor = "white";
    //document.getElementById("site-header").style.padding = "100px 10px 40px 30px";
    document.getElementById("custom-logo").style.fontSize = "35px";
    document.getElementById("text-wrap").style.fontSize = "35px";
    }
    }[/PLAIN]