$sql = 'INSERT INTO wp_plugin_info (plugin_name,current_version,slug,download_link)
VALUES ('.'"'.$name.'"'.','.$version.','.'"'.$slug.'"'.','.'"'.$link_download.'"'.') ON DUPLICATE KEY UPDATE
plugin_name = '.'"'.$name.'"'.', current_version = '.$version.', download_link = '.'"'.$link_download.'"'.'';
$wpdb->query($sql);
我在点击按钮时将插件数据插入到表中。但我想检查插件数据是否已经存在然后不插入,否则插入它。
这里我将“slug”指定为UNIQUE键,“ID”是自动递增主键。 我想比较基于slug的数据。 比方说,如果版本更改..那么它不能在表中插入新行。而是它将基于slug更新行。
这是我的表:
$table_name = $wpdb->prefix . 'plugin_info';
if($wpdb->get_var("show tables like '$table_name'") != $table_name)
{
$sql = "CREATE TABLE " . $table_name . " (
`id` int(11) NOT NULL AUTO_INCREMENT,
`plugin_name` varchar(255) NOT NULL,
`current_version` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`download_link` varchar(255) NOT NULL,
PRIMARY KEY id (id),
UNIQUE KEY `plugin_test` (`slug`)
);";
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
}
这是我的代码,但它不起作用。