Admin-Ajax-Fehler

Ich mache Homepage im lokalen Host.

Ich brauche wp_query mit Ajax.

aber da ist ein Fehler. Ich weiß nicht warum. Kannst du mir helfen?

—-> Das ist load_more_ajax.js

 var page = 2; var date_pass = ""; var compare_pass = ""; var ajaxurl = ""; jQuery(function($){ $('body').on('click', '.loadmore', function(){ var data = { 'action': 'rnm_load_more_ajax', 'page': page, 'date_filter': date_pass, 'compare': compare_pass, 'security': '' }; $.post(ajaxurl, data, function(response){ $('.race-posts').append(response); page++; }); }); }); 

und das ist load_more_ajax.php

 <?php function load_posts_by_ajax_callback(){ echo ("hello"); } 

Das ist add_action

 add_action('wp_ajax_rnm_load_more_ajax', 'load_posts_by_ajax_callback'); add_action('wp_ajax_nopriv_rnm_load_more_ajax', 'load_posts_by_ajax_callback'); add_action('wp_enqueue_scripts', 'rnm_enqueue_fn'); function rnm_enqueue_fn(){ wp_register_script('rnm_load_more', get_template_directory_uri() .'/js/load_more_ajax.js', array(), false, true); wp_enqueue_script('rnm_load_more'); } 

Dies macht einen Fehler wie folgt. Fehlermeldung

Ich denke, es gibt ein Problem in der URL von ‘admin-ajax.php’

Aber ich kann keine Lösung finden.

Solutions Collecting From Web of "Admin-Ajax-Fehler"

Sie müssen die Werte dem Lokalisierungsskript übergeben, “rechts” nach dieser Zeile:

 wp_enqueue_script('rnm_load_more'); 

Ich werde die Admin-URL an Ihr Skript übergeben, indem Sie wp_localize_script :

 $localization = array( 'ajax_url' => admin_url('admin-ajax.php'), ); wp_localize_script( 'rnm_load_more', 'jjang', $localization ); 

Jetzt können Sie die ajax_url in Ihrem Skript verwenden:

 var ajaxurl = rnm_load_more.ajax_url; 

Sie können den Rest der Daten mit dieser Methode senden.

Sie können PHP-Code nicht in einer .js-Datei verwenden, es sei denn, Sie ändern Ihre Konfiguration. Selbst wenn Sie dies getan hätten, müssten Sie WP laden, um diese URLs zu erhalten. Was gerade passiert, ist, dass Sie den PHP-Code und nicht sein Ergebnis in JS haben.

Wahrscheinlich möchten Sie wp_localize_script verwenden , um Daten aus WP festzulegen , auf die Sie dann in einer statischen JavaScript-Datei zugreifen können.