Передача переменной в качестве аргумента в функцию Wordpress get_options () - PullRequest
0 голосов
/ 19 октября 2010

Я сейчас пытаюсь поработать над плагином и столкнулся с проблемой.По сути, на странице настроек плагина у меня есть форма, в которой пользователь будет вводить информацию для подписки по электронной почте.Однако мне нужны разные формы для каждого экземпляра формы электронной почты.Я пытаюсь соединить это быстро, поэтому вместо того, чтобы переписать его, я просто изменяю код, который уже существует.

Вот проблема.Я передаю переменную для идентификатора конкретного opt-in списка в форму опции.Я намерен использовать его в качестве суффикса для каждого из полей параметров.

    $savedvar1 ='email_capture_signup_';
    $savedvar1 .=$savedformname;
    <input type="text" name="<?php echo $savedvar1;?>" class="regular-text code" value="<?php echo get_option($savedvar1); ?>" />

Код работает для отправки данных, однако я не могу отобразить сохраненное значение.Передача переменной через get_option (), похоже, не работает.Я знаю, что не слишком разбираюсь в коде Wordpress, но есть ли способ передать эту информацию или мне нужно будет выполнить запрос к базе данных через wpdb.К сожалению, имена списков должны быть динамическими (определяемыми пользователем), поэтому я не могу просто жестко их кодировать.Спасибо за вашу помощь.

1 Ответ

1 голос
/ 19 октября 2010

Возможно, вы захотите попробовать более чистый способ хранения сгруппированных опций.get_option и set_option могут работать с объектами и массивами, они сериализуются в базе данных и не сериализуются при извлечении.

Таким образом, само имя опции никогда не меняется, а вещи внутри него.Таким образом, вы не только сможете получить доступ к своим опциям в виде массива с помощью таких функций, как isset и empty, но также сможете проходить через них.Затем, если вам нужно добавить дополнительное поле, просто добавьте дополнительную переменную в ваш массив и сохраните.

...