2013-06-13 42 views
0

人,我有一个代码,我需要在Wordpress中包含。你能告诉我如何改变这些代码在wordpress中工作吗?ajax在wordpress通过数据

非WordPress的代码是:

JS

$(document).ready(function() { 
    $('#example').ratings(5).bind('ratingchanged', function(event, data) { 
    $('#example-rating').text(data.rating); 

    $.ajax({ 
     url : 'rating_plugin.php', 
     type : 'POST', 
     data : { rating : data.rating }, 
     success : function(response){ 
     console.log("successfull");  

     } 
    }); 
    }); 
}); 

PHP

if ($_SERVER['REQUEST_METHOD'] == 'POST') 
     { 
     echo $_POST['rating']' 
     } 

感谢。

+0

的是,在实际的代码或一个错字PHP语法错误?此外,您应该澄清究竟是什么问题以及预期的结果,您在WordPress文档中找到了什么? – elclanrs

+0

不,这个工作正常,我只需要在wordpress中写这个,而我对wordpress根本不熟悉。 – user2359958

+0

他有工作代码,他想翻译成WP。 –

回答

0

在一般的WordPress其更好地使用内置的附带WordPress的

AJAX功能使评级添加到您的functions.php (在这些线路上的东西)

function rateAjax() 
    { 
    require(get_template_directory() . '/rating_plugin.php'); 
    } 
    add_action('wp_ajax_nopriv_PostAjax', 'rateAjax'); 
    add_action('wp_ajax_PostAjax', 'rateAjax'); 

jQuery的:

$(document).ready(function() { 
    $('#example').ratings(5).bind('ratingchanged', function(event, data) { 
    $('#example-rating').text(data.rating); 

    $.ajax({ 
     url : '<?php echo admin_url('admin-ajax.php');?>', 
     type : 'POST', 
     data: { action : 'PostAjax', rating : data.rating }, 
     success : function(response){ 
     console.log("successfull");  

     } 
    }); 
    }); 
}); 
+1

既然你使用'ADD_ACTION( 'wp_ajax_nopriv_PostAjax', 'rateAjax');',你的动作要'PostAjax'。 – RRikesh

+0

这也是值得注意的是,OP应该使用['wp_localize_script'(http://codex.wordpress.org/Function_Reference/wp_localize_script)如果他的代码是在一个JS文件。 – RRikesh

+0

@RRikesh - 哎呀 - 谢谢编辑:) – Mark