BP_Admin_Setting_Document::register_fields()
Description
Source
File: bp-core/admin/settings/bp-admin-setting-document.php
public function register_fields() {
$sections = bp_document_get_settings_sections();
foreach ( (array) $sections as $section_id => $section ) {
// Only add section and fields if section has fields
$fields = bp_document_get_settings_fields_for_section( $section_id );
if ( empty( $fields ) ) {
continue;
}
$section_title = ! empty( $section['title'] ) ? $section['title'] : '';
$section_callback = ! empty( $section['callback'] ) ? $section['callback'] : false;
// Add the section
$this->add_section( $section_id, $section_title, $section_callback );
// Loop through fields for this section
foreach ( (array) $fields as $field_id => $field ) {
$field['args'] = isset( $field['args'] ) ? $field['args'] : array();
if ( ! empty( $field['callback'] ) && ! empty( $field['title'] ) ) {
$sanitize_callback = isset( $field['sanitize_callback'] ) ? $field['sanitize_callback'] : array();
$this->add_field( $field_id, $field['title'], $field['callback'], $sanitize_callback, $field['args'] );
}
}
}
/**
* Fires to register Media tab settings fields and section.
*
* @since BuddyBoss 1.2.6
*
* @param Object $this BP_Admin_Setting_Media.
*/
do_action( 'bp_admin_setting_document_register_fields', $this );
}
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.