Senden Sie AJAX nicht direkt an Ihre PHP-Datei. Verwenden Sie stattdessen die in WordPress integrierten AJAX-Funktionen 1) . Sie können einen AJAX-Rückruf von Ihrem Plugin aus registrieren, und WordPress leitet Anforderungen für Sie an Ihre Plugin-Datei weiter.
Dieser Code registriert beispielsweise einen Rückruf mit dem Namen "wpa_49691":
add_action( 'wp_ajax_wpa_49691', 'wpa_49691_callback' );
add_action( 'wp_ajax_nopriv_wpa_49691', 'wpa_49691_callback' );
function wpa_49691_callback() {
// Do whatever you need with update_option() here.
// You have full access to the $_POST object.
}
Anschließend veröffentlichen Sie die gewünschten Daten. Geben Sie einfach action
im Objekt Folgendes an:
<script type="text/javascript">
jQuery(document).ready(function($) {
var data = {
action: 'wpa_49691',
my_var: 'my_data'
};
jQuery.post( ajaxurl, data, function(response) {
// handle response from the AJAX request.
});
});
</script>
Dieses Skript sendet Ihre Daten auf den Server. Im Server-Rückruf sehen Sie $_POST['my_var'] = 'my_data'
.
Weitere Informationen finden Sie unter:
1) Verwenden Sie wp_register_script( $handle );
» wp_enqueue_script( $handle )
» wp_localize_script( $handle );
- den letzten, um PHP-Inhalte in eine js-var zu verschieben, auf die Sie in Ihrem AJAX-Skript zugreifen können.