如何在插件的二级文件中使用wordpress核心函数,如wpdb函数?

时间:2014-10-31 13:33:21

标签: php ajax wordpress plugins

我尝试做的是:我有一个数据库条目(带有id作为主键的表行),我想通过点击我插件页面上的按钮删除该行。有一个ajax调用,它将ID发送到我的插件目录中名为delete.php的文件。 ajax调用正在运行,但现在我想使用wpdb函数删除自定义表中WP数据库中的行。因为它只是一个辅助插件的脚本,而不是主要的,所以默认情况下你不能使用这些功能。

我试过了:

require_once('wp-load.php');
global $wpdb;

然后:

$table_name=$wpdb->prefix .'my_tablename';

if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'){

    if(isset($_POST['id'])){
        var_dump($_POST['id']); 
        var_dump($wpdb->get_var("SHOW TABLES LIKE '$table_name'"));
    }

}

但它只是导致网络错误500.我也尝试require_once(ABSPATH.'wp-load.php'); - 但同样的错误。我尝试在var_dump( get_included_files() );exit;行后require_once()找出问题但仍然出现错误500.我做错了什么?这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

这只是一条路径: require_once('../../../wp-load.php');工作