log*_*nit 9 wordpress wordpress-plugin
我正在编写一个插件并尝试使用以下命令从我的数据库中的自定义表中请求一些数据:
$current_text = $wpdb->get_results("SELECT text FROM addtext ORDER BY id DESC LIMIT 1");
Run Code Online (Sandbox Code Playgroud)
但只是得到错误未定义变量:wpdb
知道为什么这不起作用吗?我跟着博客跟踪谷歌,没有运气.WP插件还是一个新手,所以可能是显而易见的.
谢谢!
log*_*nit 36
我需要global $wpdb;在我的功能中使用.
需要补充的一点是:您不能global在类中使用,当然您必须使用global才能让您的对象使用$wpdb.
虽然您不能在类内global 立即使用,但您必须在类内的函数内声明$wpdb为,这确实有效。global
例如这会给你一个错误:
class wpdb_test {
global $wpdb; // can't use global as a direct 'child' of a class
public function __construct () {
...
}
}
Run Code Online (Sandbox Code Playgroud)
因为global不能直接在类内部使用。同样,简单地$wpdb在类内部引用也会给您一个错误,因为该对象不知道是什么$wpdb。您必须从类内的函数内部声明$wpdb为global。
例如这很好用:
class wpdb_test {
public $variable_name;
public function __construct () {
global $wpdb; // safe to use because it's inside a function
...
}
}
Run Code Online (Sandbox Code Playgroud)
...并且因为$wpdb已在类global内的函数内声明,所以您可以使用它。
| 归档时间: |
|
| 查看次数: |
8309 次 |
| 最近记录: |