PHP-Sitzung beim Aufruf von wp_ajax_nopriv

Ich versuche mit Sitzungen mit WordPress Ajax Call API arbeiten, aber ohne Erfolg.

Am Anfang von functions.php writed:

if (!session_id()) { session_start(); } 

Wenn Sie zum Beispiel Ajax aufrufen, um zu funktionieren

 add_action( 'wp_ajax_nopriv_compare_objects_request', 'compare_objects_request' ); 

Die Sitzung in der function ‘compare_objects_request’ ist nicht verfügbar.

Wenn in der function ‘compare_objects_request’ session_start () gesetzt wird, wird außerdem jedes Mal, wenn der Aufruf ausgetriggers wird, die Variable $ _SESSION immer neu gesetzt.

Solutions Collecting From Web of "PHP-Sitzung beim Aufruf von wp_ajax_nopriv"

WordPress verwendet oder beeinflusst PHP Sessions in keiner Weise. Daher funktionieren die Sitzungsfunktionen genau gleich, egal ob Sie WordPress oder einfache PHP- oder AJAX-Anfragen oder etwas anderes verwenden.

PHP-Sitzungen hängen jedoch sehr stark von Ihrer spezifischen PHP-Konfiguration ab. Wenn die PHP-Sitzungseinstellungen in der PHP.INI nicht korrekt konfiguriert sind, funktionieren sie nicht ordnungsgemäß. Und viele Web-Hosts haben keine Standardeinstellungen für Sitzungen konfiguriert. Daher sind PHP-Sitzungen nicht sicher zu verwenden, es sei denn, Sie haben die Kontrolle über die Konfiguration des Servers und sind nicht für verteilten Code geeignet, da viele Hosts keine guten Konfigurationen haben.

Stellen Sie daher sicher, dass Sie die Einstellungen in PHP korrekt eingerichtet haben, bevor Sie sie verwenden.

https://php.net/manual/de/session.configuration.php