Функция DO_SETTINGS_FIELDS() в WordPress: использование и примеры

Функция DO_SETTINGS_FIELDS() в WordPress

Функция do_settings_fields() предназначена для отображения полей настроек в определальном разделе настроек на странице администратора WordPress. Она является частью API настроек и обычно вызывается через функцию do_settings_sections(), а не напрямую.

Возвращаемое значение

Функция не возвращает ничего (null).

Использование

Функция вызывается следующим образом:

do_settings_fields( $page, $section );

Где:

  • $page (string, обязательный) — это уникальное название страницы администратора, на которой находятся поля настроек, которые вы хотите отобразить.
  • $section (string, обязательный) — это название раздела настроек, поля которого вы хотите показать.

Примеры

Пример 1: Вывод зарегистрированных полей

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

Настройки плагина Primer

В этом примере:

  • settings_fields( 'primer_group' ) добавляет необходимые защитные поля.
  • do_settings_fields( 'primer_page', 'primer_section' ) выводит поля из указанного раздела настроек.

Примечания

  • Глобальная переменная $wp_settings_fields используется для хранения полей настроек и их страниц/разделов.

Изменения

  • Функция do_settings_fields() была введена в версии 2.7.0.

Код функции

Вот как выглядит код функции do_settings_fields():

function do_settings_fields( $page, $section ) {
global $wp_settings_fields;

if ( ! isset( $wp_settings_fields[ $page ][ $section ] ) ) {
    return;
}

foreach ( (array) $wp_settings_fields[ $page ][ $section ] as $field ) {
    $class = '';

    if ( ! empty( $field['args']['class'] ) ) {
        $class = ' class="' . esc_attr( $field['args']['class'] ) . '"';
    }

    echo "";

    if ( ! empty( $field['args']['label_for'] ) ) {
        echo '';
    } else {
        echo '' . $field['title'] . '';
    }

    echo '';
    call_user_func( $field['callback'], $field['args'] );
    echo '';
    echo '';
}

}

Связанные функции

Вот некоторые функции, которые могут быть полезны при работе с API настроек в WordPress:

  • add_settings_error()
  • add_settings_field()
  • add_settings_section()
  • do_settings_sections()
  • get_settings_errors()
  • register_setting()
  • settings_errors()
  • settings_fields()
  • unregister_setting()

Эти функции помогут вам легко управлять настройками вашего плагина или темы в WordPress.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *