在wordpress里面新建一张数据表的代码和步骤
天兴工作室 2022-03-04 16:42 wordpress教程 1189 0 评论
今天在给一个客户做定制的时候需要在wordpress里面新建一个数据表,实在是不想看源码直接上某搜索引擎搜了下”wordpress新建数据表“,排除csdn和某”it1352“这种辣鸡网站后,搜出来的结果还是大同小异,大部分都是抄的”我爱水煮鱼“的一篇文章。
然后我就直接复制水煮鱼的代码,测试后发现新建数表并不成功。综合参照其他搜索结果也一样的不成功。
只能放弃面向搜索引擎写代码的习惯,去看了下wp新建数据表的源码,在”wp-admin/includes/schema.php“文件里面。
对照了看下觉得是不是数据库的字符集问题?
水煮鱼的代码如下:
function weixin_robot_texts_crate_table() { global $wpdb; $table_name = $wpdb->prefix . "weixin_robot_texts"; if($wpdb->get_var("show tables like '$table_name'") != $weixin_robot_texts_table) { $sql = "CREATE TABLE " . $table_name . " ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `keyword` varchar(255) CHARACTER SET utf8 NOT NULL, `reply` text CHARACTER SET utf8 NOT NULL, `status` int(1) NOT NULL DEFAULT '1', `time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`id`), UNIQUE KEY `keyword` (`keyword`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; "; require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); dbDelta($sql); }} register_activation_hook( __FILE__,'weixin_robot_texts_crate_table');
他这个字符集是直接写死的,wp源码里面是这么写的:
$charset_collate = $wpdb->get_charset_collate();
然后我把代码改了下:
function my_table_crate_table() { global $wpdb; $charset_collate = $wpdb->get_charset_collate(); $table_name = $wpdb->prefix . "my_table_name"; if($wpdb->get_var("show tables like '$table_name'") != $table_name) { $sql = "CREATE TABLE " . $table_name . " ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `keyword` varchar(255) CHARACTER SET utf8 NOT NULL, `reply` text CHARACTER SET utf8 NOT NULL, `status` int(1) NOT NULL DEFAULT '1', `time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`id`), UNIQUE KEY `keyword` (`keyword`) ) '.$charset_collate.'; "; require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); dbDelta($sql); }} register_activation_hook(__FILE__, 'my_table_crate_table');
果然就成功了呢...
PS:结尾还是要吐槽下搜索引擎的结果,csdn这种毒瘤就不谈了,阿里云腾讯云用关键词造出一堆关联类型的辣鸡页面出来更没有节操。还有大部分的网站都是复制粘贴完事。更奇葩的是it1352这种内容辣鸡就算了,浏览辣鸡还要关注他们的辣鸡公众号,真是一堆造粪机
相关推荐
欢迎 你 发表评论: 取消回复
- 最新文章
- 热文排行
- 最多评论
- 1天兴工作室官网购物活动:全场8折优惠券 不限次数不限金额04-17
- 2天兴工作室zblog纯博客主题 vue3+小程序双版本03-19
- 3vue3项目引入vant报错的错误原因和解决办法03-12
- 4天兴工作室zblog百科主题 可搭配会员插件实现知识付费盈利03-06
- 5zblog怎么截取指定字数的摘要?zblog摘要自定义截取方法介绍02-29
- 6天兴工作室2023双11活动:五折优惠券大放送11-05
- 7腾讯云2023双11活动:2H2G3M轻量服务器88一年限新用户11-05
- 8新老同享 阿里云2023双11活动:2核2G3M带宽云服务器99元/年!10-31
- 9天兴工作室zblog免登录付费阅读插件 支持支付宝微信支付虎皮椒支付10-09
- 标签聚合
- ×1应用中心错误×1带链接×1zblog完整版安装×1百度搜索×1密码忘记×1zblog评论错误×1垃圾评论×1zblog商城插件×1小视频主题×1忘记密码×1360搜索代码×1明日头条×1zblog邮箱×1Word发文章×1emlog博客模板×1非常慢×1管理员账号×1蓝色简洁模板×1准备安装zblog×1emlog搬家
最新评论
-
天兴工作室
03-21对的,下个版本会修复 -
访客
03-20此模版多张并排图片,不管点哪张图,都显示第一张,且没有轮播按钮,只能手动关闭。 系统:win7+火狐浏览器 -
天兴工作室
01-19没听懂 你是要批量创建分类?这是插件的事情主题不会考虑的 -
访客
01-18分类一个一个设置太麻烦了。能不能在主题设置里添加对分类的设置。 -
天兴工作室
01-16没太理解你的需求,麻烦联系我们的在线qq2076496616提供订单号详细说明下需求