我正在使用wordpress 3.5并使用插件处理简报。我已经放置了新闻稿小部件,其中包含一个用于电子邮件的文本框和一个用于订阅的按钮。单击该按钮时,它将被定向到名为subscribe.php的文件。它位于[wordpress_plugin_directory] /subscribe.php。
我想使用AJAX进行此订阅。单击该按钮时,它只需调用[wordpress_plugin_directory] /subscribe.php并让该文件完成工作。我已经阅读了许多关于如何在Wordpress上使用AJAX的文章,但似乎我无法理解它。
如何使用AJAX调用该文件?
答案 0 :(得分:1)
这很难回答,因为你没有展示你尝试过的东西。
按照codex中的示例,它有效。进一步的阅读文章(特别是关于安全性)也值得阅读和实施。
AJAX正在调用一个函数,而不是打开一个文件(尽管你可以使用include或require在函数中打开文件 - 但这可能没有必要,为什么不使用函数返回你需要的东西?我不知道subscribe.php中是什么,所以这可能适合也可能不适合。
如果仍然无法让它工作,请显示您尝试过的内容以及失败的位置,以便提供更详细的答案。
答案 1 :(得分:0)
你有一个这样的表格
<form id="newletterBoxForm" method="POST" action="[wordpress_plugin_directory]/subscribe.php">
<input type="text" ... />
<input type="text" ... />
<input type="submit" ... />
</form>
使用jQuery,你可以在它开始之前获取事件并取消这样的动作:
$(document).ready(function() {
$("#newletterBoxForm").on("submit", function() {
$.ajax({
type: "POST",
url: "[wordpress_plugin_directory]/subscribe.php.",
// get the data of your form
data: $(this).serialize(),
success: function (data) {
// if it is ok, do some actions
alert("ok DONE!")
},
error : function(s , i , error){
console.log(error);
}
});
// cancel normal behaviour which will refresh your page
return false;
});