2017-03-08 15 views
1

Ich habe ein System (in Laravel 4.2 gebaut) und ich möchte es mit Wordpress integrieren.Wordpress in Laravel Integration

Nur authentifizierte Benutzer können auf dieses Blog zugreifen.

denke ich in 2 Möglichkeiten:

1 -> In routes.php sind so etwas wie

Route::group(array('before' => 'auth')), function() { 
    Route::get("wordpress", function() { 
     require_once public_path() . '/blog/wp-load.php'; 
     exit; 
    }); 
}); 

Nur Auth Benutzer Blogs Routen sehen. Wenn jemand versucht, ohne Login zuzugreifen, wird es 404 Fehler anzeigen (dieser Code funktioniert nicht, nur ein Beispiel).

2 -> Integrieren Laravel mit Wordpress. Wenn Sie einen neuen Benutzer in Laravel erstellen, wird es auch in Wordpress erstellt. Wenn Sie auf Blog zugreifen, wird der Benutzer automatisch in Wordpress eingeloggt.

+0

Sie können diese Frage auch in ihrem Forum stellen. Sowohl Laravel als auch Wordpress verwenden eine eigene Routing- und Ordnerstruktur. – C2486

Antwort

0

Mahmoud, danke.

Ich löste dieses Problem mit der Funktion wp_set_auth_cookie ($ user_id, true);

Nach dem Login in meinem System rufe ich eine Funktion, die wp_set_auth_cookie verwenden und den Benutzer in Wordpress anmelden.

+0

Das ** ** ** beantwortet die Frage nicht auf nützliche Weise. Warum glaubst du, das ist die Antwort? _wie funktioniert es? Jemandem einfach zu sagen, seinen Code zu ändern _ ohne irgendeinen Kontext oder eine Bedeutung zu haben, hilft ihnen nicht zu lernen, was sie falsch gemacht haben. – GrumpyCrouton

+0

Ich habe die zweite Option verwendet. Erstellen Sie einen Wordpress-Benutzer ist einfach, Sie können es finden. (Ich beantwortete meine eigene Frage, also markierte ich sie als Antwort). Nachdem ich den Benutzer erstellt habe, habe ich: require ("/ pathToWpLoad/wp-load.php"); \t \t \t $ user_id = Benutzername_exists ($ email); \t \t \t $ userdata = get_userdata ($ user_id); \t \t \t $ user = set_current_user ($ user_id, $ username); \t \t \t wp_set_auth_cookie ($ user_id, true); –

0

Um ein Union-Benutzer-System zu erstellen, schlage ich vor, dass Sie verwenden WordPress REST API & OAuth (Authentication System) es hat ein WordPress-Plugin können Sie die Daten für beide Seiten, Laravel & WordPress verwenden.

Um Benutzer von Laravel-Anwendung zu authentifizieren, damit sie WordPress-spezifisches Verzeichnis anzeigen können, sollten Sie WordPress-Authentifizierungscookies von Laravel generieren und dann umleiten.

denke ich, diese Artikel kann Ihnen helfen, zu starten:

How to use WordPress as a backend for a Laravel Application

Using the WordPress REST API/Authentication

WordPress REST API - OAuth 1.0a Server