我正在写一个wordpress插件。在我之间我试图进行ajax调用,但我无法将数据发布到我正在寻找的php文件。到目前为止,我已经google了很多,并找到了一些代码片段,但似乎没有什么工作方式我正在寻找。
以下是我目前正在实施的代码段。
<script>
$(document).ready(function(){
$('#status').change(function(){
$.post( "index.php", { id: "1", status: "2" } );
});
});
</script>
我希望重定向到我的插件index.php文件以进行其余的数据库操作。但它将我重定向到wp-admin / index.php页面。
答案 0 :(得分:0)
试试这个:
将ajax操作放在主插件文件中
add_action( 'wp_ajax_nopriv_my_action', 'my_action_callback' );
add_action( 'wp_ajax_my_action', 'my_action_callback' );
function my_action_callback() {
global $wpdb; // this is how you get access to the database
$id = intval( $_POST['id'] );
$status = $_POST['status'];
echo 'whatever';
die(); // this is required to terminate immediately and return a proper response
}
并像这样调用你的ajax函数:
<script>
jQuery(document).ready(function($){
var ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>';
var data = {
'action': 'my_action',
'id' : '1',
'status': '2'
};
// We can also pass the url value separately from ajaxurl for front end AJAX implementations
jQuery.post(ajaxurl, data, function(response) {
alert('Got this from the server: ' + response);
});
});
</script>