Я создал страницу пользовательских параметров для своей темы WordPress и создал текстовую область для пользователей, чтобы добавить параметры, которые будут добавлены в массив в другом файле. Пользовательский ввод успешно добавлен в соответствующее место в базе данных, но он сохраняется в виде одной строки. Я хотел бы, чтобы пользователь мог вводить один параметр в каждой строке и сохранять входные данные в виде массива, а каждая строка - в качестве элемента в массиве.
например:
Текстовый ввод пользователя:
'my option1'
'my option2'
'my option3'
хранится как:
a:1:{s:24:"my_textarea_field_0";s:34:"my option1
my option2
my option3";}
Я бы хотел, чтобы он был сохранен в виде массива: {"my option1", "my option2", "my option3"}
Кроме того, текст, введенный в текстовую область, сохраняется в базе данных, но не отображается в текстовой области после нажатия кнопки отправки. Я хотел бы, чтобы пользовательский ввод был добавлен в базу данных в виде массива и продолжал отображаться в текстовой области после его отправки.
Вот соответствующий код:
function my_textarea_field_0_render() {
$this->$options = get_option('my_settings');
?>
<p style="margin: .25em 0 .5em!important; display: inline-block;">
<label for="my_settings[my_textarea_field_0]">
Lorem ipsum dolor sit amet.</label>
</p>
<p>
<textarea cols='145' rows='8' name='my_settings[my_textarea_field_0]'><?php echo $options['my_textarea_field_0'];?></textarea>
</p>
<?php
add_option('my_settings', '$options');
}
Я потратил некоторое время на поиск решений и работу с кодом, но я не смог понять это.