更新WordPress插件数据库

时间:2016-11-26 22:29:51

标签: wordpress

假设app-store上的人已经在使用插件,是否有一种简单的方法可以强制数据库更新,同时保留用户拥有的数据?必须擦除数据库并删除所有记录并不是一个理想的场景。

具体操作是添加一个具有现有记录已知值的列。

任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:2)

有很多方法可以做到这一点。一种方法是比较插件版本并在那里进行迁移。一旦完成更新版本,就不会重复。

function plugin_update() {
    global $plugin_version;

    if ( get_site_option( 'plugin_version' ) != $plugin_version )
        plugin_updates();


}

add_action( 'plugins_loaded', 'plugin_update' );


function plugin_updates() {
    global $wpdb, $plugin_version;

    $table_name = $wpdb->prefix . 'thetable';

    $wpdb->query(
        "ALTER TABLE $table_name
         ADD COLUMN `count` SMALLINT(6) NOT NULL
        ");

    // update option
}