我正在研究 WordPress 主题并尝试在我自己的主题类中使用 $wpdb 类。当我尝试使用以下 SQL 查询时,$wpdb->options
变量为空并生成错误。
global $wpdb;
$wpdb->query("UPDATE ". $wpdb->options ." SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';");
我在我创建的类中使用此代码。
这是一个高度缩小的班级样本
class Theme_Class {
function init($options) {
/* Load theme's functions. */
$this->functions();
}
function plugins() {
global $wpdb;
/* Auto plugin activation */
if(get_option('morphius_int_plugins', '0') == '0') {
$wpdb->query("UPDATE ". $wpdb->options ." SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';");
$wpdb->query("UPDATE ". $wpdb->sitemeta ." SET meta_value = 'a:0:{}' WHERE meta_key = 'active_plugins';");
update_option('morphius_int_plugins', '1');
}
}
}
我是否没有正确地全球化 $wpdb 变量。任何帮助将不胜感激。
编辑
据我目前所知。导致问题的似乎是 SQL 语法中的引号。如果我将查询更改为
$wpdb->query("UPDATE $wpdb->options SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';");
它似乎可以正常工作。