【发布时间】:2014-04-18 19:39:45
【问题描述】:
我目前有一个运行良好的 wordpress 插件,但现在面临的问题是确保它可以跨任何服务器实例部署。基本上我正在努力做到这一点,因此插件将创建我需要的表,并在激活插件后自动插入大量数据(11k+ 行)。我有导出的 sql 文件,其中包含所有表 (3.8MB)。
我计划实施和自定义的代码如下,但我不确定如何引用 SQL 文件,以及创建 5 个单独的表以及插入所有数据。
//action hook for plugin activation
register_activation_hook( __FILE__, 'callback_plugin' );
//callback function
function callback_plugin(){
global $wpdb;
$table_name = $wpdb->prefix . "your-table-name";
if($wpdb->get_var("SHOW TABLES LIKE '$table_name'") != $table_name) {
$sql = "CREATE TABLE $table_name (
id int NOT NULL AUTO_INCREMENT,
name tinytext NOT NULL
);";
//reference to upgrade.php file
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
dbDelta( $sql );
}
}
非常感谢任何和所有帮助!
【问题讨论】: