如何在 WordPress 的自定义插件中制作表格

问题描述 投票:0回答:1
    $departments_sql = "CREATE TABLE IF NOT EXISTS '" . $departments . "'(
        'ID' bigint(20) NOT NULL AND AUTO_INCREMENT,
        'name' varchar(128) NOT NULL,
        'parent' bigint(20) NOT NULL DEFAULT '0',
        'position' int(11) NOT NULL DEFAULT '1',
        'description' varchar(512) DEFAULT NULL,
        PRIMARY KEY ('ID'),
        KEY 'parent' ('parent'))
        ENGINE=InnoDB" . $charset . ";";

在 WordPress 中使用插件制作表格
但不起作用

mysql wordpress plugins
1个回答
0
投票

您需要在主插件文件中添加以下内容以制作插件激活表(在下面设置您的自定义表名称)

register_activation_hook(__FILE__, 'my_custom_plugin_activation');
function my_custom_plugin_activation() {
    require_once(ABSPATH . 'wp-admin/includes/upgrade.php');

    global $wpdb;
    
    dbDelta("
        CREATE TABLE {$wpdb->prefix}my_custom_table_name (
        `ID` BIGINT(20) NOT NULL AUTO_INCREMENT,
        `name` VARCHAR(128) NOT NULL,
        `parent` BIGINT(20) NOT NULL DEFAULT '0',
        `position` INT(11) NOT NULL DEFAULT '1',
        `description` VARCHAR(512) DEFAULT NULL,
        PRIMARY KEY (`ID`)
    ) {$wpdb->get_charset_collate()};");
}

它应该可以工作(不需要“CREATE TABLE IF NOT EXISTS”)。

© www.soinside.com 2019 - 2024. All rights reserved.