Как сохранить пользовательскую мета на пользовательской странице администратора

Я удалил страницу профиля редактирования из WP admin, так как я не хочу, чтобы пользователи могли редактировать свои данные, поскольку это закрытая интрасеть, и их данные передаются из AD.

Однако я хочу, чтобы они могли публиковать собственное описание пользователя (Биография). Поэтому я решил добавить новую страницу администратора, чтобы дать пользователю возможность сделать это:

add_action('admin_menu', 'sc_stace_user_bio_page'); function sc_stace_user_bio_page() { $page = add_menu_page( "Your Biography", "Biography", "read", "user-bio", "sc_stace_user_bio_page_content", "", 50 ); } function sc_stace_user_bio_page_content() { global $current_user; get_currentuserinfo(); ?> <div class="wrap"> <h2>Your Biography</h2> <form action="options.php" method="post"> <textarea rows="10" cols="100" name="user_description"><?php echo esc_textarea($current_user->user_description); ?></textarea> <?php submit_button( "Save", "primary", "submit", true ); ?> </form> </div> <?php } ?> 

Насколько я знаю, я не могу использовать API настроек здесь, так как эта информация нуждается в сохранении для зарегистрированных пользователей, а не в таблице опций. Итак, теперь я застрял, так как не знаю, где должна быть сохранена форма и как правильно проверить отправку формы.

Итак, где мне представить форму? Какие nonces, если таковые имеются, следует вводить в форму? Что мне нужно сделать для проверки отправки формы и отправки правильных данных за исключением метаданных пользователя?

Solutions Collecting From Web of "Как сохранить пользовательскую мета на пользовательской странице администратора"

 update_user_meta($current_user->ID, 'description', $_POST['user_description']); 

в функции обработки формы будет экономить био.

Я бы сохранил действие формы на той же странице администратора. Что касается проверки данных, я не вижу, что нужно для проверки в первую очередь. Это всего лишь строка, а не адрес электронной почты, адрес и т. Д., Которые необходимо проверить в определенном формате.

Как и в Johannes, update_user_meta – это почти все, что вам нужно для проверки данных. У Justin Tadlock есть отличная запись в блоге о добавлении пользовательских мета-полей. Просто добавьте функцию, которая выводит форму на новую страницу администратора.