2017-04-07 3 views
0

In einer PHP-Website (kein WordPress) möchte ich überprüfen, ob der aktuelle Besucher bereits und zuvor in einem anderen WordPress-Blog (anderer Ordner oder Domäne) eingeloggt ist.Check WordPress Login außerhalb der aktuellen Domain

Ich benutze diesen Code:

define('WP_USE_THEMES', false); 
require('../wp-blog-header.php'); 
if(!is_user_logged_in()) 
{ 
exit('You do not have access'); 
} 

Es funktioniert einwandfrei, wenn PHP-Website in diesem Pfad ist

example.com/site/index.php

aber ich Fehler 500, wenn ich es in

SUBDOMAIN.example.com/index.php

define('WP_USE_THEMES', false); 
require('httpS://www.example.com/wp-blog-header.php'); 
if(!is_user_logged_in()) 
{ 
exit('You do not have access'); 
} 

Ist es möglich, ein Cross-Domain-Check zu tun?

Antwort

0

Ich hatte ein ähnliches Problem, als ich eine Subdomain erstellte, um eine bestimmte Seite von meiner Site anzuzeigen. Ich bekam keinen 500 Fehler, aber die Seite würde geladen und der Benutzer wäre nicht eingeloggt. Der Grund ist, weil Wordpress die Subdomain als eigene Domain sieht und somit nicht versuchen würde, dieselben Cookies zu laden/darauf zuzugreifen. Ich lief über diesen Beitrag:

https://github.com/dellis23/django-wordpress-auth/issues/6#issuecomment-130070419

Sie müssen grundsätzlich hinzufügen COOKIE_DOMAIN und COOKIEHASH in Sie wp-config-Datei und legen Sie sie auf die Stammdomäne der Wordpress Sie wollen, dass die bekommen Cookie-Informationen von. Wenn Sie dies so einstellen, sollte Ihre gesamte Domain auf die Cookie-Informationen zugreifen können.

Ich weiß nicht wirklich, warum Sie einen 500 Fehler obwohl bekommen. Vielleicht ist es, wie Sie versuchen, die wp-blog-header.php zu bekommen. Ich glaube nicht, dass Sie einfach die tatsächliche Adresse mit "https://www" eintippen können und alles, was Sie benötigen, mit etwas wie "../example.comDomainDirectory/wp-blog-header.php" oder "../example. comDomainDirectory/wordpressInstallDirectory/wp-blog-header.php "

Hoffnungen dies hilft Ihnen bei Ihrem Unterfangen! Cheers