首页 > 解决方案 > 如何在 MySQL 中创建可以加入 Wordpress wp_users 和 wp_usermeta 并存储在另一个表中的触发器

问题描述

如何在 MySQL 中创建可以加入 Wordpress wp_users 和 wp_usermeta 并存储在另一个表中的触发器我有两个站点一个是 wordpress 另一个是自定义构建我想在两个站点之间同步用户表但问题是 Wordpress 不存储用户一张表中的数据。

当用户注册时,MySQL 触发加入表 wp_users 和 wp_usermeta 到结构 Id - User_login - User_pass - first_name - last_name - user_email 并将它们保存在名为 users 的表中,该表具有以下列 id - username - password - first_name - last_name - user_email

插入触发器

        CREATE TRIGGER `User_Sync_I` AFTER INSERT ON `wp_users` FOR EACH ROW INSERT INTO khschool.users (id, username, password, email) VALUES(new.id, new.user_login, new.user_pass, new.user_email)

更新触发器

        CREATE TRIGGER `User_Sync_u` BEFORE UPDATE ON `wp_users` FOR EACH ROW UPDATE khschool.users set username=new.user_login, password=new.user_pass, email=new.user_email,  WHERE id=new.id

现在我只能触发 wp_users 和用户之间的同步,我无法从 wp_usermeta 同步 firs_name 和 last_name。

wp_usermeta 表的结构如下:

    id | user_id | meta_key | meta_value
    ------------------------------------
    1  | 1       | firstname| bob
    2  | 1       | lastname | smith
    3  | 1       | country  | denmark

任何帮助将不胜感激。谢谢你们

标签: mysqldatabasewordpresstriggerssynchronization

解决方案


推荐阅读