我在一个名为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\']);
}
我可以将它们的值添加到数据库中吗?
最合适的回答,由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,这正是它的构建目的。