Php Wordpress,如何创建用户和填充其他字段
我在Wordpress网站上有一个注册页面。 在创建用户时,我希望在数据库中填充额外字段-它们是预先确定的:Php Wordpress,如何创建用户和填充其他字段,php,wordpress,Php,Wordpress,我在Wordpress网站上有一个注册页面。 在创建用户时,我希望在数据库中填充额外字段-它们是预先确定的: showbusiness = 1 showemail = 1 showaddress = 1 showphone = 1 showwebsite = 1 showemailcontent =1 我将如何添加这些,因为我目前有以下内容,但我知道wp\u create\u user不允许这样做: $status = wp_create_user( $username, $pass
showbusiness = 1
showemail = 1
showaddress = 1
showphone = 1
showwebsite = 1
showemailcontent =1
我将如何添加这些,因为我目前有以下内容,但我知道wp\u create\u user
不允许这样做:
$status = wp_create_user( $username, $password, $email );
假设其中一个表中已存在必要的列:
add_action( 'user_register', 'registration_extra_fields', 10, 1 );
function registration_extra_fields( $user_id ) {
global $wpdb;
$table_name = $wpdb->prefix . 'users'; // or any other table
$wpdb->get_results("
UPDATE $table_name
SET column = val
WHERE ID = $user_id
");
}
您要使用的WordPress包装函数是
update\u user\u meta()
。您也可以使用add\u user\u meta()
,但如果它不存在,update会将它添加到那里
add_action( 'user_register', 'registration_extra_fields', 10, 1 );
function registration_extra_fields( $user_id ) {
update_user_meta( $user_id, 'showbusiness', 1);
/* repeat for each data value */
}
注意:要触发Faisal和我使用的“用户注册”操作,您需要使用wp\u insert\u user()
函数。这类似于wp\u create\u user()
函数,但允许更大范围的输入
还请注意,您可以将整个数组发送到usermeta表,而不仅仅是单个值。这有助于加快操作速度
这样的东西可以用在钩子函数中:
$data = array(
'showbusiness' => 1,
'showemail' => 1,
'showaddress' => 1,
'showphone' => 1,
'showwebsite' => 1,
'showemailcontent' => 1
)
update_user_meta( $user_id, 'showflags', $data );
然后在需要使用数据的地方get_user_meta($user_id,'showflags')代码>
希望有帮助。我建议您停止编码。看看这个: