Итак, я пытался научить себя динамически создавать новые секции панелей и элементы управления с помощью JS API настройщика.
Несколько дней это разочаровывало, и я не смог найти точный способ добиться этого с помощью JS API.
Пока что это то, что я делаю, чтобы это произошло, но безуспешно:
// for Settings
api.create(
params.id,
params.id,
params.default,
params.args
);
// for controls
var controlConstructor = api.controlConstructor[params.type];
var control = new controlConstructor(params.id, {
params: params,
previewer: api.previewer
});
api.control.add(
params.id,
control
);
//for Sections
var section = new api.Section(params.id, {
params: params
});
api.section.add( params.id, section );
api.section('section_id').activate();
Кажется, что ни один из них не работает, так как раздел не появляется, и мне нужно api.section('section_id').activate()
дважды запустить консоль, чтобы раздел появился, то же самое и с контролем.
Note that the APIs for dynamically-added controls, and APIs for JS-templated custom Sections and Panels are not yet available as of WordPress 4.2.
Это подводит итог. :(