2012-08-30 6 views
22

Dies ist etwas, an dem ich seit langer Zeit zu arbeiten versuche. Es begann mit Prestashop als eine Integration mit anderen Skripten oder Teile des Puzzles, die ich für eine gesamte Website machen musste. Momentan benutze ich Prestashop noch als meinen Webstore, bin aber seitdem auf Magento umgestiegen.Verwenden von Magento als Hauptanwendung und Erstellen einer einzelnen Anmeldung zur Integration mit anderer Software von Drittanbietern

Ich bin aufgrund der komplexen Flexibilität zu Magento gewechselt und weil ich denke, dass es die beste Lösung, die beste Unterstützung und das beste eCommerce-Skript ist.

Das gleiche gesagt, die gleichen Probleme, die ich mit Prestashop hatte, scheinen die gleichen zu sein, die ich auch weiterhin im Aspekt haben werde, dass ich versuche, Dinge in perfekter Harmonie zusammen zu integrieren.

Ich habe Magento Setup, als der Hauptteil der Website, und in Magento in Unterordnern Ich habe Wordpress in einem Ordner namens "Artikel" installiert und ich habe auch mit FluxBB als meine Nachrichtenforen ging wegen seiner Einfachheit in keine Mist mehr aufgeblähte Extra-Features, die ich weniger kümmern könnte und das ist in einem Unterordner namens "Foren".

Von diesem Punkt wissen wir, dass Magento, Wordpress und FluxBB alle ihre eigene Art der Benutzerverwaltung haben; Erstellen, Verwalten und Verfolgen von ihnen.

Was ich tun möchte, ist die beste Möglichkeit zu finden, diese drei und mehr zusammen für meine Website zu passen, um die Erfahrung für den Kunden so reibungslos und so funktionell wie möglich zu machen. Nachdem er den immer talentierten und hilfsbereiten Alan Storm per E-Mail geschickt hatte, sagte er mir, dass die beste Lösung, die er kannte, eine Benutzerverwaltung von Dritten sei, auf die alle verweisen und die die Kundenauthentifizierung verwaltet. Ich glaube, seine Gedanken mögen die besten sein, aber ich wollte das hier auf StackOverFlow veröffentlichen und ich könnte dies auch auf Magento veröffentlichen, um die breite Palette von Magento-Entwicklern und schlauen Jungs zu bekommen, die Herausforderungen mögen.

Ich habe mehrere Gedanken, keiner mag arbeiten, einige arbeiten vielleicht halb Arsch, oder man kann nur etwas praktikabel sein. Aber lassen Sie mich zuerst erzählen, was ich bisher erreicht habe. Ich habe die notwendigen Schritte unternommen, um mein Gesamtdesign für die Kopf- und Fußzeile zu integrieren, so dass Wordpress und FluxBB im Wesentlichen in Magentos äußerem Design-Layer enthalten sind. Also habe ich es auch so gemacht, dass Magento die Sitzung überprüft, um zu sehen, ob der Benutzer bei Magento angemeldet ist oder nicht, indem er "Hallo Gast" oder "Hallo Benutzer" sagt. Dies ist, wo ich einen Haltepunkt erreicht habe, weil ich überfordert bin und Hilfe möchte, ob es etwas ist, das wir aus reiner Herausforderung erschaffen oder jemand sagt, wenn ich es bezahle, werden sie mir helfen, so oder so erreicht. Wenn und wenn ich den Code erhalte, finde ich heraus, ob ich durch die Zahlung für die Unterstützung einer Gruppenarbeit diese für andere frei verfügbar machen möchte, um das Konzept für ihre eigenen Projekte zu verwenden.


Gehirn Fart # 1:

die Tabellen für Benutzer anpassen beide Wordpress und FluxBB mehr entsprechen die Struktur von Magento, wie für das Passwort und Benutzername/E-Mail-Login Teil. Der Rest der Felder kann jeweils so bleiben, wie sie für Post-Zählungen usw. sind.

Von dort möchte ich herausfinden, welche Klasse in Magento die tatsächliche Eingabe in die Datenbank ausführt, wenn ein Kunde aus der Registrierung erstellt wird . Wenn ich diesen Code finde, möchte ich darauf eingehen, dass ich die Benutzeranmeldeinformationen in die anderen beiden Tabellen in der Datenbank für Wordpress und FluxBB kopieren kann. Bei Bedarf kann es sich bei Wordpress und FluxBB um ein paar zusätzliche Felder handeln, wenn das eine bessere Idee zu sein scheint, und ja, ich meine das eigentliche verschlüsselte Passwort, das Magento erstellt, ich möchte, dass es auch sicher ist.

Von dort, wenn wir wissen, dass ein Kunde sich bei Magento registriert, werden die Daten in die anderen beiden Tabellen kopiert, dann haben wir zumindest Fortschritte gemacht, ob dieser Fortschritt tatsächlich funktioniert, ist noch zu bestimmen.

Wir deaktivieren dann die Anmelde-/Abmeldungs- und Registrierungslinks in jeder Weise, die wir von Wordpress und FluxBB erhalten können, da sie nicht mehr benötigt werden, da der Benutzer sich über einen Standort, der Magento ist, anmelden und abmelden kann.

Dann kommt der spaßige Teil in meinen Augen, halten Sie die verdammte Sitzung über die gesamte Website gehen, wie sie Produkte bestellen, WordPress Artikel überprüfen und möglicherweise Kommentare hinterlassen, an Freunde und etc .... senden sowie Themen, Antworten usw. in der FluxBB-Kapazität.

Hier kommt die Erstellung der Felder oder das Hinzufügen der Daten aus der Kundenregistrierung von Magento ins Spiel. Ich kann überprüfen, ob sie bereits in Magento eingeloggt sind und von dort aus validieren können selbst. Dies kann über die Tötung sein oder dies kann nur sein, wie es getan werden muss. Aber für mich, wenn sich die Zugangsdaten in allen drei Datenbanken befinden, sollten sie validiert werden können, indem Sie den Code in Wordpress und FluxBB ändern oder Code hinzufügen. Und ja, ich bin mir bewusst, dass wir auch etwas an der Profilbearbeitung und Passwortbearbeitung vornehmen müssen, wenn ein Kunde seine Informationen ändern möchte.

Aber das ist mein erster Gedanke daran, ob es die richtige Entscheidung ist oder nicht, ich würde gerne von dem umfassenden Wissen der Leute hier hören, die mehr Erfahrung und Wissen als ich mit Magento, PHP und allem anderen habe.


Gehirn Fart # 2

Diese unlogisch Idee scheint wie ein außen strecken, um mich ganz wegen der Komplexität von Magento und wie ist es Gesamtaufbau.

Aber die Idee ist, Wordpress und FluxBB (und jede andere Software von Drittanbietern) zu entfernen/zu ignorieren, so ziemlich ihre eigene Methode der Registrierung zu ignorieren, loggen, abmelden, bearbeiten und Magento für seine Anmeldeinformationen suchen und neue Kunden zu etablieren . Im Wesentlichen machen sie sie zu einem übergroßen Modul von Magento.

Ich weiß nur, dass die Art, wie Magento eingerichtet wird, modularisiert werden soll und seine Komplexität so aussieht, als würde es viel mehr Code und Fehlerbehebung erfordern, dies zu tun.


Gehirn Fart # 3

Dump beide Wordpress und FluxBB und ihren Blick auf Module im Magento-Verbindung Store verkauft, dass so ziemlich alle Funktionen hat, die ich brauche und kann ergänzen, was fehlt und nicht mit dem Versuch, Software von Drittanbietern zu integrieren.

Ich liebe Wordpress, ich denke, es mit einem Modul zu replizieren, zumindest nach den Stunden, die ich verbracht habe, alle verfügbaren Module anzusehen, die CMS/News sind, ist ein harter Anruf. FluxBB Ich könnte es nehmen oder lassen, wenn jemand eine bereits praktikable Lösung hätte, um phpBB oder vBulletin oder SimpleMachines zu benutzen, würde ich mit ihnen gehen. Ich bin es eher freie Open-Source-Software, nicht weil ich ein billiger Skate bin, sondern nur, weil ich Open Source so viel unterstütze wie ich kann.


Gehirn Fart # 4

Kann dies ein Cookie sein, dies, würde aber nur dann wirksam sein, wenn sie Cookies zulassen oder könnte irgendwie mit der Sitzung Addon Dinge zu ermöglichen, setzt zu passieren aber Magento verschiedene Sitzungen oder erlaubt Ihnen auch, damit sie Dinge gegeneinander abstürzen, so dass dies überhaupt keine Idee oder auch eine sein kann.


Ich weiß, ich bin nicht Beispiele für Dinge, was ich versucht habe, Dateien habe ich sah oder etwas, dass im Zusammenhang und ich entschuldige mich, ich biete einige Links verwendet, aber nichts gesagt so weit herausgefunden, dass, was paßt Ich bin versuchen zu erreichen. Und ich habe versucht, Dinge mit einigen verhängnisvollen Ergebnissen zusammenzubringen.

Link-Beispiele ?: http://www.magentocommerce.com/wiki/doc/webservices-api/api/customer#customer.create http://www.magentogarden.com/blog/how-are-passwords-encrypted-in-magento.html http://www.nicksays.co.uk/magento_events_cheat_sheet/ http://www.magentocommerce.com/wiki/5_-_modules_and_development/customers_and_accounts/registration_fields How to access Magento customer's session from outside Magento?

Jede mögliche Unterstützung mit diesem wäre schön, ich versuche, auf einmal auf einige Teile der Website zu arbeiten und dieses lästig und ich würde sagen, dass jeder es schwer finden wird oder es hart gefunden hat. Jeder mag Herausforderungen? :)

--------- EDIT:

ich habe Magento und Wordpress perfekt zusammen mit James Kemp Modul auf CodeCanyon Webseite (Single Sign-On für Magento und Wordpress) gefunden zu arbeiten und Ich werde es anpassen, um für FluxBB oder irgendetwas, das ich mache, zu arbeiten.

Nur die Informationen weitergeben ... Ich sehe, das wurde bearbeitet, weiß nicht, was bearbeitet wurde und egal. Ich gebe nur Informationen weiter, die ich seitdem gefunden habe.

+2

Das ist ein Roman einer Frage - wenn du jemals irgendwo einen Blogeintrag über deinen Fortschritt schreibst, bitte poste hier einen Link! – aendrew

+0

Sehr interessant zu sehen, wie Sie das durchstanden haben. Wir haben vor einiger Zeit darüber gesprochen, wie wir dies (nur zwischen WP und Magento) tun können und haben nicht wirklich eine Lösung gefunden. Ich muss das weiterreichen. Vielen Dank! – levigideon

+1

http://en.wikipedia.org/wiki/Single_sign-on Aus diesem Grund wurden OpenID und Facebook Connect entwickelt, um das gleiche Problem zu lösen, aber in einem größeren Rahmen. – B00MER

Antwort

1

Ich verwalte/customizing eine Combo von Magento + Vanille Foren + eine benutzerdefinierte App im Yii-Framework. Die Nutzer werden zwischen den Apps "geteilt". Keiner der zwei Links ist gut. Da Alan bereits auf Sie geantwortet hat, wird das korrekte SSO mit einer externen Benutzerdatenbank/-manager zusammengeführt. Aber gut, nicht jeder ist dabei, drei Apps neu zu programmieren, nur um 1 Forum pro Woche und 1 Artikel pro Monat Blog mit Magento zu arbeiten. Wir haben also weniger Optionen. Vor allem, wenn Sie nicht wollen (wahrscheinlich nicht) eine gute Portion eines bereits geschriebenen Open-Source-Projekts, das aktualisiert und gewartet wird, neu schreiben und dann Ihre Änderungen gegen periodische Updates (Sie wollen) pflegen, dann müssen Sie Duplizieren Sie die Benutzerdaten über drei Datenbanken. Es sei denn, das Projekt, das Sie anpassen, hat eine Möglichkeit, Benutzerdaten als Plugin oder externes Modul zu verwalten. AFAIK beide deiner Wahl nicht.

Also, wie man es implementiert? Vorausgesetzt, Sie wählen Magento als Mutter von allem, müssen Sie eine API für die Authentifizierung exportieren, die über Browser mit Cookies und Javascript funktioniert, aber das ist ziemlich schwierig, oder Sie können es verwenden Frontend-Cookie, um die Sitzungen Server zu validieren Server-API-Anfragen von Kinder-Apps. Dies ist eine bevorzugte Option, soweit "klassische" SSO geht. Technisch gesehen, was passieren sollte, wenn Ihre Benutzer ein Forum oder einen Blog öffnen, erkennen die entsprechenden Apps den Cookie von Magento und prüfen, ob die Sitzung gültig ist und wer der Benutzer ist. Wenn der Benutzer gefunden wird, werden seine Daten in die Blog- oder Forum-Tabellen kopiert. Dann müssen Sie eine authentifizierte Sitzung in Blog oder Forum-App mit dem neu erstellten Benutzerdatensatz starten.

So weit so gut, aber noch etwas Arbeit.Sie müssen die Verwaltung der Benutzerprofile in den Kinder-Apps deaktivieren oder ändern, damit die in Magento enthaltenen Daten immer die richtige sind, und Sie müssen etwas erfinden, um die Darstellung des Benutzerprofils von Magento auf die untergeordneten Elemente zu synchronisieren. Dies ist besser, wenn Sie an Magentos Veranstaltungen teilnehmen. Jedes Mal, wenn ein Benutzer sein Profil ändert, werden die Daten in der Kinder-App aktualisiert. Aber da ist noch ein anderes aber auch. Wahrscheinlich möchten Sie einige Daten App-spezifisch halten, ein Anzeigename im Forum ist nicht notwendig, der Vorname + Nachname aus dem Magento und einige möchten es privat zu halten.

Das obige ist genau das, was ich als interessante Fakten darüber erinnern kann, es am Laufen zu halten. Es gibt sicher noch viele andere Dinge, die ich mehr oder weniger spezifisch ausgelassen habe. Aber hoffentlich kann mein Kommentar Ihrem Gehirn helfen zu furzeln.

Wir haben versucht, andere Optionen zu bewerten, aber alles ohne doppelte Daten scheint zu teuer zu implementieren oder zu warten. Vielleicht später. Mit Budget und Zeit.

Verwandte Themen