【发布时间】:2015-12-20 10:56:35
【问题描述】:
我试图在我的 wordpress 数据库中创建一个自定义表以保存剧集率,我想使用函数 PHP,因为我不想创建插件 我使用了这段代码,但它不起作用,表不会被创建,任何帮助。
function ratings_fansub_create() {
global $wpdb;
$table_name = $wpdb->prefix. "ratings_fansub";
global $charset_collate;
$charset_collate = $wpdb->get_charset_collate();
global $db_version;
if( $wpdb->get_var("SHOW TABLE LIKE " . $table_name)!= $table_name)
{ $create_sql = "CREATE TABLE ".$table_name. "(
ratings_fansub_id INT(11) NOT NULL auto_increment,
ratings_fansub_postid INT(11) NOT NULL ,
ratings_fansub_posttitle TEXT NOT NULL,
ratings_fansub_rating INT(2) NOT NULL ,
ratings_fansub_timestamp VARCHAR(15) NOT NULL ,
ratings_fansub_ip VARCHAR(40) NOT NULL ,
ratings_fansub_host VARCHAR(200) NOT NULL,
ratings_fansub_username VARCHAR(50) NOT NULL,
ratings_fansub_userid int(10) NOT NULL default '0',
ratings_fansub_PRIMARY KEY (id))$charset_collate;";
}
require_once(ABSPATH . "wp-admin/includes/upgrade.php");
dbDelta( $create_sql );
//register the new table with the wpdb object
if (!isset($wpdb->ratings_fansub))
{
$wpdb->ratings_fansub = $table_name;
//add the shortcut so you can use $wpdb->stats
$wpdb->tables[] = str_replace($wpdb->prefix, '', $table_name);
}
}
add_action( 'init', 'ratings_fansub_create');
【问题讨论】: