Add action "in_widget_form" allowing plugins to add extra fields, don't show "Save" button if a widget doesn't have settings form, fixes #9651

git-svn-id: https://develop.svn.wordpress.org/trunk@11155 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Andrew Ozz
2009-05-02 00:21:16 +00:00
parent 47d56db997
commit d9e724974f
2 changed files with 11 additions and 5 deletions
+9 -3
View File
@@ -65,7 +65,7 @@ class WP_Widget {
*/
function form($instance) {
echo '<p>' . __('There are no options for this widget.') . '</p>';
return false;
return 'noform';
}
// Functions you'll need to call.
@@ -259,8 +259,14 @@ class WP_Widget {
// filters the widget admin form before displaying, return false to stop displaying it
$instance = apply_filters('widget_form_callback', $instance, $this);
if ( false !== $instance )
$this->form($instance);
$return = null;
if ( false !== $instance ) {
$return = $this->form($instance);
if ( 'noform' !== $return )
do_action_ref_array( 'in_widget_form', array(&$this) ); // add extra fields in the widget form
}
return $return;
}
/** Helper function: Registers a single instance. */