在我的单个帖子页面中,我创建了下载按钮,如果有人单击按钮,那么ajax将运行,并且我的php函数将运行,我正在WordPress中发送Ajax请求,但它返回了404 bad request
错误。
以下是屏幕截图:
以下是代码:
$('body').on('click', 'a.template_download_button', function(){
var post_id = $(this).attr('data-postid');
console.log(post_id);
console.log(customJSAjax);
console.log(customJSAjax.ajaxurl);
$.ajax({
type : "post",
url : customJSAjax.ajaxurl,
data : {action: "template_downloads", post_id : post_id},
success: function(response) {
console.log(response);
}
});
});
php:
<?php
function inject_scripts() {
wp_enqueue_script( 'inject-custom-js', get_template_directory_uri() . '/js/custom.js', array(), '20151215', true );
wp_localize_script( 'inject-custom-js', 'customJSAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' )));
}
add_action( 'wp_enqueue_scripts', 'inject_scripts' );
function template_downloads(){
$post_id = $_REQUEST['post_id'];
var_dump($post_id);
die();
}
add_action("wp_ajax_template_downloads", "template_downloads");
我从post_id
标签的<a>
属性中获得了data-postid
。我不知道为什么它返回400
错误。请帮助我