Ich habe einen Ajax-Anruf für einen angemeldeten Benutzer beendet, und jetzt muss ich seine Daten im empfangenden Anruf (dem Code, der den Aktionsaufruf empfängt) abfangen. Wie kann ich die Benutzer-ID zuverlässig abrufen? Dieser Code befindet sich in meiner Plugin-Definitionsdatei und der Code in der Funktion (error_log ("wir sind in ... Art von") wird aufgerufen:
add_action( 'wp_ajax_create_team', 'create_team' );
function create_team() {
error_log("we're in....kind of");
}
}
wp_get_current_user
gibt das WP_User
Objekt für den aktuell angemeldeten Benutzer aus:
add_action( 'wp_ajax_create_team', 'create_team' );
function create_team() {
$current_user = wp_get_current_user();
echo $current_user->ID;
die;
}
Wenn Sie spezifische Daten für Ihren Ajax-Hook wünschen, müssen Sie diese mit Ihrer Anfrage senden.
<script>
jQuery(document).ready(function($) {
var data = {
'action': 'my_action',
'user_id': 1234
};
jQuery.post(ajaxurl, data, function(response) {
alert('Got this from the server: ' + response);
});
});
</script>
oft wird wp_localize_script
als praktischer Weg benutzt, um PHP-Daten als Javascript-Objekte auszugeben, die Sie dann aus dem Objekt window
lesen können.