Support » Allgemeine Fragen » Probleme bei der Weiterleitung über die functions.php

  • nobodyno

    (@nobodyno)


    Hi,

    ich habe das Plugin Wpforo installiert. Aber immer wenn ich mich über das Forum als Admin einloggen möchte, funktioniert meine zwei klassen autorisierung nicht, die ich über die Nginx Konfigurationsdatei eingerichtet habe.

    Diese funktioniert nur wenn ich mich über domain.de/wp-login.php oder domain.de/admin einloggen möchte.

    Jetzt habe ich folgende Weiterleitung in die functions.php geschrieben.

    function redirect_administrator() {
     
     if (current_user_can('administrator') && $_SERVER['PHP_SELF'] != '/wp-admin/admin-ajax.php') {
     
        wp_redirect( 'https://domain.de/wp-login.php' );
     
        exit();
     
      }
     
    }
     
    add_action('admin_init', 'redirect_administrator');

    Wenn ich mich jetzt über das Wpforo Loginformular anmelden möchte, werde nur ich als Administrator zur wp-login.php umgeleitet und somit funktionert auch die zwei klassen autorisierung.

    Nur leider gibt es ein Problem. Ich werde nach erfolgreicher Eingabe meiner Anmeldedaten nicht in das WordPress Admin Menü weitergeleitet, sondern lande immer wieder auf der wp-login.php

    Weiß vielleicht jemand, was umgeschrieben muss, damit man von der wp-login auch in das WordPress Admin Menü weitergeleitet wird?

    Danke

Ansicht von 7 Antworten - 1 bis 7 (von insgesamt 7)
  • Moderator Bego Mario Garde

    (@pixolin)

    Die Weiterleitung hängt damit zusammen, dass nach Anmeldung ebenfalls die Kondition deines if-Statements current_user_can('administrator') && $_SERVER['PHP_SELF'] != '/wp-admin/admin-ajax.php' erfüllt ist.

    Wäre es nicht viel einfacher, ein Plugin zur Zwei-Faktor-Authentifikation zu verwenden? Das Plugin Two-Factor wurde von einer Reihe ausgezeichneter Programmierer entwickelt und soll, wenn ich mich richtig erinnere, auch irgendwann in den Core übernommen werden.

    Thread-Starter nobodyno

    (@nobodyno)

    Hi, erstmal danke für die Antwort. Das Plugin Two Factor, habe ich gestern installiert. Es funktioniert auch, aber nur per Email.

    Hast Du vielleicht eine Ahnung, wie der Codeschnipsel zuverlässig umgeschrieben wird?

    Moderator Bego Mario Garde

    (@pixolin)

    Es funktioniert auch, aber nur per Email.

    Kann ich nicht bestätigen – ich setze das Plugin auf einigen Websites ein, überwiegend mit TOTP („Authenticator“).

    Hast Du vielleicht eine Ahnung, wie der Codeschnipsel zuverlässig umgeschrieben wird?

    Ehrlich gesagt verstehe ich anhand des Codes nicht so ganz, was du erreichen möchtest. current_user_can('administrator') setzt voraus, dass ein Benutzer angemeldet ist, weil für nicht angemeldete Webseitenbesucher keine Berechtigung geprüft werden kann.

    Thread-Starter nobodyno

    (@nobodyno)

    Ok, was schreibe ich denn anstatt von current_user_can(‚administrator‘)
    dort hin? Oder wie schreibe ich den Code richtig?

    • Diese Antwort wurde geändert vor 3 Jahren von nobodyno.
    • Diese Antwort wurde geändert vor 3 Jahren von nobodyno.
    • Diese Antwort wurde geändert vor 3 Jahren von nobodyno.
    • Diese Antwort wurde geändert vor 3 Jahren von nobodyno.
    Moderator Bego Mario Garde

    (@pixolin)

    … und wie war das nochmal mit dem Sinn des Lebens, des Universums und dem ganzen Rest?

    Wenn du konkrete Fragen hast, helfe ich gerne aber ich schreibe nicht auf Zuruf irgendwelchen Code.

    Thread-Starter nobodyno

    (@nobodyno)

    OHHH tut mir Leid großer Forenmeister, dass ich dir Zugerufen habe, einen CODE zu schreiben. Ich wollte dich doch nicht an deine Grenzen bringen!

    Moderator Bego Mario Garde

    (@pixolin)

    Thread geschlossen.

Ansicht von 7 Antworten - 1 bis 7 (von insgesamt 7)
  • Das Thema „Probleme bei der Weiterleitung über die functions.php“ ist für neue Antworten geschlossen.