php – 在wordpress中创建ajax调用.我需要包括什么才能访问wordpress功能

我在wordpress中执行jquery ajax请求.这称为内部PHP脚本.
这个PHP脚本需要能够访问某些wordpress功能,如… functions.PHP
这对我来说很简单.
我无法做的是访问当前wordpress用户,$wpdb对象的信息.
我的问题是…是否有一些wordpress文件,我可以包含,这使我可以访问所有数据(和functions.PHP).
我希望你能理解我正在访问的东西,因为我知道这可能是世界上最彻底的解释
:d

解决方法:

糟糕的方式(正如其他人所指出的那样)

当我创建一些与wordpress一起使用的自定义PHP时,我包含了wp-load.PHP文件.然后加载所需的一切,包括$wpdb.

require_once('wp-load.PHP'); // relative path from your PHP file

global $wpdb;
$wpdb->show_errors = TRUE; // useful for when you first start

我发现这是一个很好的起点,可以快速修复.但是你必须记住,这将加载比你实际需要的功能更多的功能.因此导致性能时间变慢.

方法

一旦功能变得更加复杂,“糟糕”的实施并不是那么好.所以我转而编写插件. wordpress codex包含有关使用AJAX和插件的良好信息:http://codex.wordpress.org/AJAX_in_Plugins

在最基本的形式中,您需要注册您的AJAX钩子:

// 'wp_ajax_foo' is the hook, 'foo' is the function that handles the request
add_action( 'wp_ajax_foo', 'foo');

您还需要相应的功能(在本例中为foo):

function foo() {
    // handle the AJAX request
    $bar = $_POST['bar'];
}

然后在JavaScript中,您可以识别要与action属性一起使用的钩子,但忽略wp_ajax部分:

$.post(ajaxurl, { action: 'foo', bar: true }, function(response) {
    // do something with response
});

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...