星期一 , 14 4 月 2025

WordPress如何创建自定义表

function create_custom_table() {
    global $wpdb;
    $table_name = $wpdb->prefix . 'custom_data'; // 表名前缀

    $charset_collate = $wpdb->get_charset_collate(); // 获取字符集

    // SQL 语句
    $sql = "CREATE TABLE IF NOT EXISTS $table_name (
        id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
        user_id BIGINT(20) UNSIGNED NOT NULL,
        data_value TEXT NOT NULL,
        created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
        PRIMARY KEY (id)
    ) $charset_collate;";

    require_once ABSPATH . 'wp-admin/includes/upgrade.php'; // 引入数据库升级文件
    dbDelta($sql); // 执行 SQL 语句
}

// 激活插件或主题时执行
register_activation_hook(__FILE__, 'create_custom_table');

如果你在主题中使用,直接调用 create_custom_table()