AJAX在Wordpress中返回0

时间:2017-06-21 20:58:56

标签: php jquery ajax wordpress

我正在尝试让我的ajax请求工作,但只返回0; 我不确定为什么我没有收到回复。我真的不完全理解my_ajax_pagination()函数如何处理。我只是在网上找到其他解决方案并找到类似的东西。

$(document).on( 'click', 'polygon', function( event ) {

 var county = $(this).attr('id')
 var region = $(this).closest('a').data('region');
    jQuery.ajax(
        {
            type: 'POST',
            url: ajaxpagination.ajaxurl,
                dataType:'json',
                        data: {
                                    action: 'my_ajax_pagination',

                                },

            success: function(data){
                console.log(data);
            },
                        error:function(err){
                            console.log('err')
                        }
        });
    })
})(jQuery);

的functions.php

            function my_enqueue_assets() {
                wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css' );
                wp_enqueue_script( 'ajax-pagination',  get_stylesheet_directory_uri() . '/js/ajax-pagination.js', array( 'jquery' ), '1.0', true );

                    global $wp_query;

                    wp_localize_script( 'ajax-pagination', 'ajaxpagination', array(
                        'ajaxurl' => admin_url( 'admin-ajax.php' ),
                        'query_vars' => json_encode( $wp_query->query ),
                      'serurity' => wp_create_nonce('wp-admin-order')
                    ));
            };

            function my_ajax_pagination() {
              $query_vars = json_decode( stripslashes( $_POST['query_vars'] ), true );
              $query_vars['county'] = $_POST['county'];
              $query_vars['region'] = $_POST['region'];

                $query = new WP_Query( array(
                        'post_type' => 'resource',
                        'posts_per_page'=> -1
                ) );
                echo $query_vars;
                die();
            };
        add_action( 'wp_ajax_nopriv_ajax_pagination', 'my_ajax_pagination' );
        add_action( 'wp_ajax__ajax_pagination', 'my_ajax_pagination' );

1 个答案:

答案 0 :(得分:1)

你得到0的原因是在WordPress中没有调用任何函数。您发送到ajax的操作应该是ajax_pagination而不是my_ajax_pagination,操作应该与wp_ajax_{name}同名。