C'est assez simple, et cela devrait être fait avec votre code utilisé pour ajouter le champ de profil utilisateur personnalisé.
Le bloc ci-dessous du code ajouter le champ personnalisé au profil de l'utilisateur:
add_action('show_user_profile', 'my_custom_user_profile_field');
add_action('edit_user_profile', 'my_custom_user_profile_field');
function my_custom_user_profile_field($user) { ?>
<h3>Custom Field</h3>
<table class="form-table">
<tr>
<th><label for="my-custom-user-profile-field">Input Label:</label></th>
<td>
<input name="my-custom-user-profile-field" id="my-custom-user-profile-field" value="<?php echo esc_attr(get_the_author_meta('my-custom-user-profile-field', $user->ID)); ?>" class="regular-text" type="text">
</td>
</tr>
</table>
<?php }
Vous devrez alors faire en sorte que le champ (s) que vous avez ajouté peut être sauvé. Vous pouvez le faire en accrochant dans personal_options_update
et edit_user_profile_update
comme ceci:
add_action('personal_options_update', 'save_my_custom_user_profile_field');
add_action('edit_user_profile_update', 'save_my_custom_user_profile_field');
function save_my_custom_user_profile_field($user_id) {
if (!current_user_can('edit_user', $user_id))
return false;
update_user_meta(absint($user_id), 'my-custom-user-profile-field', wp_kses_post($_POST['my-custom-user-profile-field']));
}
J'ai trouvé la solution en ajoutant à ce functions.php –