SQL数据库的自定义注册字段

时间:2014-03-20 作者:NakedCat

我在一个名为wp_users. 这些字段是“giodo”、“handel”和“regulamin”。

我想做的是,当用户注册并选择相应的复选框时,在每列中添加“1”。

我使用form\\u register将复选框添加到表单中,然后使用此选项将这些复选框添加到用户数据中(以下仅为其中一个示例):

add_action(\'user_register\', \'myplugin_user_register\');
function myplugin_user_register ($user_id) {
    if ( isset( $_POST[\'giodo\'] ) )
        update_user_meta($user_id, \'giodo\', $_POST[\'giodo\']);
}
我可以将它们的值添加到数据库中吗?

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

我在SQL表“wp\\u users”中创建了新列。这些字段是“giodo”、“handel”和“regulamin”。

不要向核心表添加列。无法保证在下次更新时不会销毁或损坏这些内容。您应该使用的是用户元,事实上这似乎就是您实际使用的:

add_action(\'user_register\', \'myplugin_user_register\');
function myplugin_user_register ($user_id) {
        if ( isset( $_POST[\'giodo\'] ) )
        update_user_meta($user_id, \'giodo\', $_POST[\'giodo\']);
}
所以这个问题有点令人困惑。

您的代码应该已经在数据库中插入了数据,而不是试图将数据放在哪里。您的代码应该已将数据插入$wpdb->usermeta 可以使用get_user_meta(). 这就是我的建议。放弃向核心表添加列的尝试,使用用户元API,这正是它的构建目的。

结束