我添加了一个function “我的孩子”主题中添加一个新字段Add New User 节,以便您可以选择该成员是否只是成员或候选人等:
function show_extra_profile_fields( $user ) {
$previous_value = \'\';
if( is_object($user) && isset($user->ID) ) {
$previous_value = get_user_meta( $user->ID, \'membership\', true );
}
?>
<hr>
<h2>Membership Status</h2>
<table class="form-table">
<tr>
<th><label for="membership">Membership</label></th>
<td>
<select name="membership" id="membership" style="width:150px;">
<option value="Member" <?php selected( \'Member\', get_the_author_meta( \'membership\', $user->ID ) ); ?>>Member</option>
<option value="Candidate" <?php selected( \'Candidate\', get_the_author_meta( \'membership\', $user->ID ) ); ?>>Candidate</option>
</select>
</td>
</tr>
</table>
<hr>
<?php }
add_action( \'show_user_profile\', \'show_extra_profile_fields\' );
add_action( \'edit_user_profile\', \'show_extra_profile_fields\' );
add_action( "user_new_form", "show_extra_profile_fields" );
还有我的
Save Function:
function save_extra_profile_fields( $user_id ) {
# save choice
if( isset($_POST[\'membership\']) ) {
update_user_meta( $user_id, \'membership\', $_POST[\'membership\'] );
}
}
add_action( "user_new_form", "save_extra_profile_fields" );
add_action( \'personal_options_update\', \'save_extra_profile_fields\' );
add_action( \'edit_user_profile_update\', \'save_extra_profile_fields\' );
我的问题是,单击“创建”后,它不会保存我在“选择”框中选择的选项。一旦我进入用户并再次更改它,它就会保存。
我可能错过了什么导致选择不保存创建?