API настроек Wordpress - PullRequest
       7

API настроек Wordpress

1 голос
/ 24 августа 2010

Я использую API настроек Wordpress для создания страницы настроек для плагина, который обрабатывает изображения и ссылки.Я могу зарегистрировать 3 вызова add_settings_field и добавить 3 изображения и ссылки на сайт.Кто-нибудь знает способ динамически позволить пользователю добавлять новое поле (add_settings_field) на лету.Например, если это началось с 1 поля, но им нужна секунда для другого изображения.

Ответы [ 2 ]

0 голосов
/ 22 ноября 2013

Для того, чтобы следующее работало, вам нужно иметь одно поле add_settings_ для данных. Элементы html-формы в функции обратного вызова поля add_settings_ должны быть массивом.

Пример:

<input type="text" name="field[0]" id="textfield_0" />
<input type="text" name="field[1]" id="textfield_1" />

Если вы создадите форму, подобную этой, WordPress сохранит сериализованные данные в одном поле параметров, что приведет к уменьшению количества запросов к базе данных, и вы сможете добавить в них больше данных позже.

Тогда вы используете, например, jQuery или JavaScript и кнопка для добавления дополнительных полей на страницу параметров.

Дополнительные поля также будут массивом и нумерация начинается там, где заканчивались предыдущие поля формы. Глядя на предыдущий фрагмент кода, вы начинаете:

<input type="text" name="field[2]" id="textfield_2" />
<input type="text" name="field[3]" id="textfield_3" />

Если вы все отлично соединили, ваша базовая форма с количеством полей x будет создана в функции обратного вызова add_settings_field. Дополнительные поля добавляются с помощью jQuery или Ajax.

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

Вы можете сделать это, отправив атрибут с сохраненными значениями в поле add_settings_. Посмотрите, как я решил это для себя в API настроек Wordpress и сериализации данных

0 голосов
/ 19 января 2011

вы могли бы добавить кнопку, и ваш обработчик страницы администратора (например, последний параметр для add_options_page) обрабатывает параметры GET, поэтому он может вызвать add_settings_field, может быть?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...