Heim >Backend-Entwicklung >PHP-Tutorial >Wie führt man erfolgreiche AJAX-Aufrufe im WordPress-Frontend durch?

Wie führt man erfolgreiche AJAX-Aufrufe im WordPress-Frontend durch?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-01 00:14:02811Durchsuche

How to Make Successful AJAX Calls in WordPress Frontend?

Aufruf von AJAX in WordPress: Eine umfassende Anleitung zur Ausgabe von Nicht-Null-Ergebnissen

Beim Durchführen von AJAX-Aufrufen in WordPress ist es wichtig, Folgendes zu berücksichtigen Unterschiede zwischen der Frontend- und der Backend-Umgebung. Während WordPress im Backend eine globale Ajaxurl-Variable definiert, ist diese Variable im Frontend nicht definiert. Um AJAX-Aufrufe im Frontend verwenden zu können, müssen Sie diese Variable daher explizit selbst definieren.

Verwendung von wp_localize_script:

Ein praktischer Ansatz zur Definition der Ajaxurl-Variable im Frontend besteht darin, die Funktion wp_localize_script zu verwenden. Wenn Ihre AJAX-Aufrufe beispielsweise in einer JS-Datei mit dem Namen my-ajax-script.js enthalten sind, können Sie sie wie folgt lokalisieren:

<code class="php">function my_enqueue() {
    wp_enqueue_script( 'ajax-script', get_template_directory_uri() . '/js/my-ajax-script.js', array('jquery') );
    wp_localize_script( 'ajax-script', 'my_ajax_object', array( 'ajax_url' => admin_url( 'admin-ajax.php' ) ) );
}
add_action( 'wp_enqueue_scripts', 'my_enqueue' );</code>

Verwenden der Variablen my_ajax_object in JavaScript:

Nachdem Sie Ihre JS-Datei lokalisiert haben, können Sie auf das my_ajax_object-Objekt zugreifen. Dadurch können Sie Daten mithilfe von AJAX an Ihre PHP-Funktion übergeben:

<code class="javascript">jQuery.ajax({
    type: "post",
    dataType: "json",
    url: my_ajax_object.ajax_url,
    data: formData,
    success: function(msg){
        console.log(msg);
    }
});</code>

Das obige ist der detaillierte Inhalt vonWie führt man erfolgreiche AJAX-Aufrufe im WordPress-Frontend durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn