【发布时间】:2011-02-20 03:55:07
【问题描述】:
我正在尝试创建一个新插件来根据视图跟踪热门帖子,我已经完成所有工作并准备就绪,但我似乎无法使用 Wordpress API 创建一个新表(我可以使用标准 PHP 或 phpMyAdmin,但我希望这个插件能够自给自足)。
我尝试了几种方法($wpdb->query、$wpdb->get_results、dbDelta),但它们都不会创建新表。
function create_table(){
global $wpdb;
$tablename = $wpdb->prefix.'popular_by_views';
$ppbv_table = $wpdb->get_results("SHOW TABLES LIKE '".$tablename."'" , ARRAY_N);
if(is_null($ppbv_table)){
$create_table_sql = "CREATE TABLE '".$tablename."' (
'id' BIGINT(50) NOT NULL AUTO_INCREMENT,
'url' VARCHAR(255) NOT NULL,
'views' BIGINT(50) NOT NULL,
PRIMARY KEY ('id'),
UNIQUE ('id')
);";
$wpdb->show_errors();
$wpdb->flush();
if(is_null($wpdb->get_results("SHOW TABLES LIKE '".$tablename."'" , ARRAY_N))) echo 'crap, the SQL failed.';
}
else echo 'table already exists, nothing left to do.';}
【问题讨论】:
标签: mysql database api wordpress