Добрый день!
Нужна ваша помощь:) Делаю собственную тему для wordpress, нужно чтобы в профиле пользователя можно было задавать кастомные поля. С тегом input разобрался, но решил немного доработать что бы можно было выбрать значение из выпадающего списка, в целом все работает, но после перезапуска страницы отображается первое значение, а не то что выбрал. При этом на страницы где я это значение вывожу отображается переданное значение (так и должно быть).
Вот кусок кода:
/* добавление поля в профиле история заказов*/
add_action( 'show_user_profile', 'add_extra_social_links4' );
add_action( 'edit_user_profile', 'add_extra_social_links4' );
function add_extra_social_links4( $user )
{
?>
Склад назначения:<br/>
<select placeholder="Склад назначения" name="sklad-zakaz1" value="<?php echo esc_attr(get_the_author_meta( 'sklad-zakaz1', $user->ID )); ?>" class="regular-text" /><br/>
<option value="1">1</option>
<option value="2">1</option>
<option value="3">3</option>
</select>
// сохранение
add_action( 'personal_options_update', 'save_extra_social_links4' );
add_action( 'edit_user_profile_update', 'save_extra_social_links4' );
function save_extra_social_links4( $user_id )
{
update_user_meta( $user_id,'sklad-zakaz2', sanitize_text_field( $_POST['sklad-zakaz1'] ) );
}
Вывожу значение на другой странице так:
<?php echo get_user_meta($user_ID, 'sklad-zakaz1', true ) ?>
Мне кажется ошибка в атрибуте value в теге select, но я что-то не смог разобраться.
Спасибо!