1. 首页
  2. WordPress钩子手册
  3. 主题相关

WordPressAjax调用不适用于我的自定义插件

我需要帮助让ajax在我的自定义wordpress插件中工作这些是我遵循的步骤第一步,但是由于一些未知的原因,它似乎不工作,警报或成功或错误都没有显示,好像没有调用
我做错了什么,第二,一旦点击提交按钮,页面就会重新加载,但我想阻止页面重新加载
我只希望它在成功时退出,但在失败时回显错误消息,而不是重新加载页面,这就是我所想的。

在脚本排队中,您有两次\”testu script\”。
这两个脚本都依赖于jquery吗?一个脚本依赖于另一个脚本吗?

您应该考虑使用WP函数发送AJAX响应。>您还应该有一个nonce字段并检查用户的功能。
https://developer.wordpress.org/reference/functions/wpu nonceu field/
https://developer.wordpress.org/reference/functions/currentu useru can/

您的测试.js在一个ready中有一个ready处理程序处理程序,然后在其中定义提交处理程序。preventDefault在ready处理程序中,而不是submit处理程序中,是指没有定义的ee应该是handler函数的参数。
您还可以在submit处理程序中定义var data,在post response处理程序中定义***4***。

在脚本排队中,您有两次\”testu script\”。

我在想测试.js并通过测试.js同时将两个脚本排队。

或者我应该为测试.js,然后对wpu localizeu脚本使用类似于localu testu脚本的内容(\”localu testu script\”,…。。?愉快地使用jQuery(document).ready(function($){
$(document).ready(function(){
还是只使用jQuery(document).ready(function($){

???)????如果我使用if(!当前用户u can(\”manageu options\”){

//如果根据用户能力排队,我在这里实际做什么,但是我希望ajax调用对已登录和未登录的用户都可用。为什么我要检查他们的能力?
}

我在想测试.js并通过测试.js同时将两个脚本排队。

不,排队与本地化是分开的。只能本地化已排队的脚本。之后不必再次排队。

对于ready状态,只需要一个处理程序。但是我不知道传递给ready处理程序的参数是jQuery。

WP支持功能,插件也应该支持。即使你检查的是read功能,也应该检查,否则你的插件并不真正支持所有的WP和其他插件添加的功能。
你没有说你的插件将要做什么,但是如果用户可以更改数据,你必须先检查功能。如果你使用访问者在表单中键入的内容,最好在使用前对其进行清理,否则网站将被入侵。

@joylyly

由于插件仅用于联系人表单,因此不需要检查功能,对于网站的每一个访问者来说,无论是否登录,它都主要位于前端。

我确实需要第一步和第四步的帮助,如果你能在我的插件中提供更好的代码排队和使用wp ajax的方法,第四步会在页面加载时调用ajax,这样我就可以知道ajax是否真的工作了,在我给它添加条件之前,检查功能是不需要的,因为插件只是用于联系人表单,那么AJAX需要什么呢?在提交之前,您可以使用JS检查所需的字段。

什么是AJAX,然后需要AJAX来执行以下操作。

1。将otp代码发送到服务器进行确认,确认后返回true。

2。一旦为真,主表单将使用$(\”submit_button\”).submit()提交,因此表单am构建是jquery中的一个otp模式窗口,并且在不重新加载页面的情况下,在ajax中运行消息值和验证就足够了。

比通常所需的字段js验证要大,它必须运行一个php文件来获取值,然后我发现了我的问题,所以我测试了alert(数据.paul);

它工作了,但这只是在js文件中手动输入的文本。所以我想问一下wordpress中的ajaxurl或adminajax是否返回Json或Object?如果它返回object,我应该如何用它声明一个变量,ajaxurl就是执行PHP代码的端点。返回的是代码返回的内容。这就是为什么我说你应该考虑使用WP函数来发送AJAX响应

WordPressAjax调用不适用于我的自定义插件 为WP2原创文章,链接:https://www.wp2.cn/hook/theme_hook/wordpressajax%e8%b0%83%e7%94%a8%e4%b8%8d%e9%80%82%e7%94%a8%e4%ba%8e%e6%88%91%e7%9a%84%e8%87%aa%e5%ae%9a%e4%b9%89%e6%8f%92%e4%bb%b6/

发表评论

您的电子邮箱地址不会被公开。