WP_Widget::form( array $instance ): string

Outputs the settings update form.


Current settings.


string Default return is 'noform'.


public function form( $instance ) {
	echo '<p class="no-options-widget">' . __( 'There are no options for this widget.' ) . '</p>';
	return 'noform';



User Contributed Notes

  1. Skip to note 2 content

    Ever wonder why your IDE complains that your form() method isn’t returning a value?

    WP_Widget::form returns 'noform' by default, so technically any class that extends WP_Widget should also return a string. The vast majority of widgets don’t have any return statement, so they implicitly return NULL.

    wp-admin/widgets.php checks the return value when rendering the widget’s form, and if the value is 'noform', then it hides the Save button. If the value is anything else, it shows the Save button.

    So, you should technically return a string inside your form() method, even if it’s just an empty string, but the Save button will still show up even if you don’t.

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