没有调用Wordpress wp_ajax

时间:2015-08-26 21:29:50

标签: javascript php jquery ajax wordpress

我尝试在Wordpress 4.3中使用我的第一个AJAX函数。

我已经构建了一个名为“calipso”的插件。 在插件中有两个文件

calipso.php:

<?php
/**
* @package calipso
* @version 1.0
*/
/*
Plugin Name: calipso
Plugin URI: http://www.calipso.de
Description: Dieses  Plugin for Calipso-Projekt.
Author: Calipso
Version: 1.0
Author URI: http://www.calipso.de
*/

function llv_integrates() {
    $plugin_url = plugins_url( '/', __FILE__ );
    wp_enqueue_script('MyAjax',$plugin_url . 'MYajax.js', array( 'jquery' ),'1.0.0',false);

    $ajaxObjekt = array( 'ajaxURL' => admin_url( 'admin-ajax.php' ) );
    wp_localize_script('MyAjax', 'ajaxObjekt', $ajaxObjekt);   
}
add_action( 'wp_enqueue_scripts', 'llv_integrates' );

function TEST_callback(){
    $anzahl= $_POST['anzahl'];
    //$anzahl = isset($_POST['anzahl']) ? $_POST['anzahl'] : '';

    $datei_handle=fopen("logmeInWPAnzahl.txt","a"); 
    fwrite($datei_handle, "Anzahl: ".$anzahl."\n"); 
    fclose($datei_handle);    
    wp_die();
}
add_action('wp_ajax_TEST_callback','TEST_callback');
add_action('wp_ajax_nopriv_TEST_callback','TEST_callback');

和MYajax.js:

function JStoPHP(){ 
    console.log("JStoPHP is called");
    console.log(ajaxObjekt.ajaxURL);
    jQuery.ajax({
        url:ajaxObjekt.ajaxURL,  
        data: {action:'TEST_callback' , anzahl: "12315"},
        datatype: "json",
        type: "POST",
        success: function(respose) {
             console.log(respose);
        },
        error: function (xhr, ajaxOptions, thrownError) {
            console.log(xhr.status);
            console.log(thrownError);
        }
    });
}
JStoPHP();

预期的操作:将变量'Number'从JavaScript函数JStoPHP传递到名为PHP函数TEST_callback的ajax。

目前似乎没有调用TEST_callback函数。我的错误在哪里?

1 个答案:

答案 0 :(得分:0)

代码必须位于插件的第一位才能开始工作。