Seitenlogin, Usertable außerhalb der WP Datenbank

  • Hi, ich schreibe an einem Theme was auf drei Seiten+Shop genutzt werden soll.
    Derzeit liegt mir ne Tabelle mit Kunden auf einem anderen SQL Server vor, welche ich gerne für den Login benutzen würde. Da dies den Verwaltungs- und Pflege-Aufwand immens senken würde.

    Ich habe jetzt das PlugIn "external-db-auth-reloaded" versucht aber bekomme nur Fehler und schießt den Login komplett ab.

    Ich hab zwei Ideen: 1. Nach dem eingeben der Logindaten in die Oberfläche, wird erst geprüft ob der User in der externen Tabelle bekannt und für die Weboberfläche frei geschaltet ist. Ja Fall: User wird mit einem standard Konto Beispielname: "Kunde" im WP eingeloggt. Alle speziellen Informationen zum Kunden bleiben bei der externen DB. (Sprache und so)

    2. Idee: Es wird zu erst in der WP Userliste nach geschaut ob der User existiert oder nicht. Ist der User nicht bekannt wird ein WPUser mit den bereits aus der Kundenkartei bekannten Daten + Zufallspassword angelegt. Danach wird der User noch darauf hingewiesen das er das PW ändern sollte. Vorteil die Passwort vergessen Funktion könnte noch genutzt werden und WP verwaltet weiterhin die Daten. Nachteil wird ein Usereintrag in der externen DB geändert wie Anschrift, Nachname, Email oder sonstiges müssten diese auch in die WPUserliste mit übertragen werden. Das widerrum geht nur mit nem Zugriff über ne separate Funktion und nicht vom WPSys aus... also soweit ich weis kann zum Beispiel die EMail eines User nicht geändert werden.

    Ihr seht, is nich so einfach und hab leider mit WP noch nicht so viel praktische Erfahrung, daher habt ihr ne Empfehlung?

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Die Verwendung einer externen Datenbank/Tabelle für die User ist kein Problem WENN diese den gleich Aufbau hat. Eine Datenbank/Tabelle zu verwenden, die einen anderen Aufbau hat würde einen Abstraktionslayer benötigen, um die notwendigen Tabellenfelder zu "übersetzen". Sobald auch nur ein Plugin oder Theme dann nicht auf die WordPress Funktionen zurückgreift geht das schief. Auch ich mag keine redundanten Daten aber in diesem Fall ist nur eine Synchronisation sinnvoll, also Idee 2. Die Emailadresse kann jederzeit geändert werden.

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

  • Okay, hast du/ habt ihr ne Ahnung obs für diesen Fall en PlugIn bereits gibt? Das Plugin Sidebar Login ist dann ja wieder außenvor, da es die geforderten abfragen ja bisher nich vorsieht. Und das PlugiIn anpassen auch nich soll toll wegen Updates.

    Danke für die schnelle Antwort.

  • Für eine kundenspezifische Lösung mit einer Datenbankstruktur die niemand kennt wird es wahrscheinlich kein Plugin geben. Du könntest aber mal WP All Import + User Add-on testen. Damit sollte es Dir möglich sein in regelmäßigen Abständen einen Abgleich zu fahren. Ansonsten bleibt nur die Programmierung einer eigenen Lösung (die ja gar nicht in WordPress laufen muss, sondern als PHP, Python, Perl oder RoR Script auf dem Server laufen kann).

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

  • Hi, also hab die Funktion zum abgleichen der Userlisten ma angefangen, doch leider wird der firstname, lastname und display_name nicht mit gespeichert. Sonst geht alles. Habt Ihr ne Ahnung wo es klämmt?

    habs mit wp_update_user, update_user_meta und wp_insert_user probiert, der letzte weg ist es per SQL noch zu ändern aber das würde ich gerne vermeiden wenn es standart Funktionen gibt.
    Um die Userrole per Accessmanger habe ich leider keine Funktion gefunden daher habe ich das so eingetragen.
    Das $user_interface musste ich jetzt als Zwischentabelle nehmen da ich derzeit mit drei unterschiedlichen Tabellen arbeite, die teils franz., russische und deutsche Feldnamen besitzen.

    Einmal editiert, zuletzt von 3a5y2k (15. Oktober 2015 um 08:56)

  • Danke für eure Hilfe, hab es jetzt hin bekommen;)

    Der Displayname war schon eingetragen bloß steht der logischerweise nicht in der Userübersicht sondern im Profil selber.
    Beim Vor- und Nachnamen habe ich 'lastname' und nicht 'last_name' geschrieben, mal wieder Betriebsblindheit.

    Grüße der Paul

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!