WP_Widget::get_field_name( string $field_name ): string

Constructs name attributes for use in form() fields

Description

This function should be used in form() methods to create name attributes for fields to be saved by update()

Parameters

$field_namestringrequired
Field name.

Return

string Name attribute for $field_name.

Source

public function get_field_name( $field_name ) {
	$pos = strpos( $field_name, '[' );

	if ( false !== $pos ) {
		// Replace the first occurrence of '[' with ']['.
		$field_name = '[' . substr_replace( $field_name, '][', $pos, strlen( '[' ) );
	} else {
		$field_name = '[' . $field_name . ']';
	}

	return 'widget-' . $this->id_base . '[' . $this->number . ']' . $field_name;
}

Changelog

VersionDescription
4.4.0Array format field names are now accepted.
2.8.0Introduced.

User Contributed Notes

  1. Skip to note 2 content

    Example

    function wpdocs_widget_form( $instance ) {
    	?>
    	<p>
    		<label for="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>">Title:</label>
    		<input type="text" value="<?php echo esc_attr( $instance['title'] ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'title' ) ); ?>">
    	</p>
    	<?php
    }

You must log in before being able to contribute a note or feedback.