wpseek.com
Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren



add_settings_field › WordPress Function

Seit2.7.0
Veraltetn/v
add_settings_field ( $id, $title, $callback, $page, $section = 'default', $args = array() )
Parameter: (6)
  • (string) $id Slug-name to identify the field. Used in the 'id' attribute of tags.
    Erforderlich: Ja
  • (string) $title Formatted title of the field. Shown as the label for the field during output.
    Erforderlich: Ja
  • (callable) $callback Function that fills the field with the desired form inputs. The function should echo its output.
    Erforderlich: Ja
  • (string) $page The slug-name of the settings page on which to show the section (general, reading, writing, ...).
    Erforderlich: Ja
  • (string) $section Optional. The slug-name of the section of the settings page in which to show the box. Default 'default'.
    Erforderlich: Nein
    Standard: 'default'
  • (array) $args { Optional. Extra arguments that get passed to the callback function. @type string $label_for When supplied, the setting title will be wrapped in a `<label>` element, its `for` attribute populated with this value. @type string $class CSS Class to be added to the `<tr>` element when the field is output. }
    Erforderlich: Nein
    Standard: array()
Definiert in:
Codex:
Changelog:
  • 4.2.0

Adds a new field to a section of a settings page.

Part of the Settings API. Use this to define a settings field that will show as part of a settings section inside a settings page. The fields are shown using do_settings_fields() in do_settings_sections(). The $callback argument should be the name of a function that echoes out the HTML input tags for this setting field. Use get_option() to retrieve existing values to show.


Quellcode

function add_settings_field( $id, $title, $callback, $page, $section = 'default', $args = array() ) {
	global $wp_settings_fields;

	if ( 'misc' === $page ) {
		_deprecated_argument(
			__FUNCTION__,
			'3.0.0',
			sprintf(
				/* translators: %s: misc */
				__( 'The "%s" options group has been removed. Use another settings group.' ),
				'misc'
			)
		);
		$page = 'general';
	}

	if ( 'privacy' === $page ) {
		_deprecated_argument(
			__FUNCTION__,
			'3.5.0',
			sprintf(
				/* translators: %s: privacy */
				__( 'The "%s" options group has been removed. Use another settings group.' ),
				'privacy'
			)
		);
		$page = 'reading';
	}

	$wp_settings_fields[ $page ][ $section ][ $id ] = array(
		'id'       => $id,
		'title'    => $title,
		'callback' => $callback,
		'args'     => $args,
	);
}