我已经编写了一个使用Ajax更新客户端并在生产服务器上正常工作的Wordpress插件。如果以完全管理员权限登录,本地wampserver上的相同插件仅返回正确的Ajax响应 - 所有其他用户(包括公共)都会收到只是主页的html响应!Wp ajax本地wamp除非以管理员身份登录
这显然是我的wampserver的一个设置问题,但我感到困惑的是,如果我以管理员身份登录,我可以让插件工作(仅)。
任何指针,以帮助识别问题将不胜感激。
由于几个最初的反应,我已经做了一些调查,相信是有可能发生在我注册的Ajax调用挂钩的PHP函数,除非一个以管理员身份登录重定向。我相信我遵循所有正确的Ajax设置(挂钩既注册了正常也注册了非priv,缓存设置为false,json编码返回并终止于wp_die()等)。我还在10个月前发现了一个有人遇到过类似问题的帖子('whitenoisedb',15年4月24日7:55提问),并且'已解决....在front.page.php中处理AJAX,因为它是不可能的,通过使用管理 - Ajax.php',他仍然想知道为什么它不能做'正确'的方式!
重新迭代,问题只出现在我的本地wampserver开发服务器上,并继续让我神秘。
谢谢,我试过了,但它没有帮助 - 可能是因为重定向独立于此钩子发生,正如我上面所建议的。 – joe90
这只是一个例子,你可以使用'!defined('DOING_AJAX')'。找到重定向完成的位置并将'!defined('DOING_AJAX')'添加到条件。 –