wordpress自定义创建数据库表_数据库增删改查操作
admin
2024-03-31 04:41:04

当我们在开发wordpress主题或者插件时需要新的数据库储存我们的信息,下面我们就介绍如何创建,修改,增加,删除自定义数据库表。

1、wordpress创建数据库表

function add_table(){ //创建自定义分类表函数
global $wpdb;
$table_name = $wpdb->prefix . "types"; //声明表名 types为要创建的表名
$table_names = $wpdb->get_var("SHOW TABLES LIKE '$table_name'"); //获取声明的表判断是否存在if($table_names != $table_name){$sql = "CREATE TABLE " . $table_name . " (`tid` bigint(20) NOT NULL AUTO_INCREMENT,`term_id` bigint(20) NOT NULL,PRIMARY KEY (`tid`),UNIQUE KEY `term_id` (`term_id`)) ENGINE=MyISAM  DEFAULT CHARSET=utf8;";require_once(ABSPATH . 'wp-admin/includes/upgrade.php');dbDelta($sql);}
}
add_table();

      tid:表中的字段   term_id:表中字段  可根据需求增加

2、wordpress增加数据库表字段 $wpdb->query()

      $wpdb->query()  中可为任意的增删改查sql语句

global $wpdb;
$table_name = $wpdb->prefix . "types"; //表名
$sql = $wpdb->query("ALTER TABLE  表名  ADD 字段名 CHAR(255)");
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);

3、wordpress数据库增删改查操作

增:$wpdb->insert() ,

global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//增加数据
$sql = $wpdb->insert('wp_termmeta',array('term_id'=>8,'meta_key'=>'title','meta_value'=>'我是标题')); 
dbDelta($sql);

删:$wpdb->delete(),

global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//删除数据表 wp_termmeta 中 meta_id 为 1 的数据  
$sql = $wpdb->delete( 'wp_termmeta', array( 'meta_id' => 1 ) );
dbDelta($sql);

改:$wpdb->update,

global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
//改  (修改meta_id等于80中的 meta_value中的值为我是修改后的标题 )
$sql = $wpdb->update('wp_termmeta',array('meta_value'=>'我是修改后的标题'),array('meta_id'=>80));  
dbDelta($sql);

  第一个数组为修改的内容,第二个为修改的条件

查:$wpdb->get_results

global $wpdb;
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
$sql = $wpdb->get_results("SELECT * FROM wp_termmeta WHERE term_id = '9' ");
for($i=0;$imeta_key;echo $sql[$i]->meta_value;
}
print_r($sql);

4、$wpdb是一个全局变量,包含多个关于wordpress数据库操作函数: 

$wpdb -> get_results('query');  
$wpdb->query('query');  
$wpdb->get_var('query',column_offset,row_offset);  
$wpdb->get_row('query', output_type, row_offset);  
$wpdb->get_col('query',column_offset);  
$wpdb->get_results('query', output_type);  
$wpdb->insert( $table, $data, $format );  
$wpdb->update( $table, $data, $where, $format = null, $where_format = null );  
$wpdb->prepare( 'query' [, value_parameter, value_parameter ... ] );  
$wpdb->show_errors();  
$wpdb->hide_errors();  
$wpdb->print_error();  
$wpdb->get_col_info('type', offset);  
$wpdb->flush();   

相关内容

热门资讯

生活太苦?来块红枣南瓜发糕:软... 闹钟响了三次,我挣扎着从床上爬起来。窗外的天还是灰蒙蒙的,城市尚未完全苏醒,只有远处偶尔传来的几声鸟...
金玉其外的茶,抵不过记挂你的人 前天晚上,一个年轻的朋友微信联系我。她说有人送了她一盒黄山毛峰,我知道她,现在的年轻人根本不喝茶,他...
一抹相承聚势拓新,梵净抹茶香溢... 5月31日上午,以“一抹相承,聚势拓新;梵净抹茶,香溢天下”为主题的2026抹茶大会,在贵州省铜仁市...
【成冠美食】2025—2026... 2026.6.1—2026.6.7 本周食谱 新鲜食材 科学搭配 一日三餐对孩子们的健康成长 有着至...