Title: register_sidebar_widget
Published: April 25, 2014
Last modified: February 24, 2026

---

# register_sidebar_widget( string|int $name, callable $output_callback, string $classname, mixed $params )

## In this article

 * [Description](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#description)
    - [See also](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#see-also)
 * [Parameters](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#parameters)
 * [Source](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#changelog)

[ Back to top](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#wp--skip-link--target)

This function has been deprecated since 2.8.0. Use [wp_register_sidebar_widget()](https://developer.wordpress.org/reference/functions/wp_register_sidebar_widget/)
instead.

Register widget for sidebar with backward compatibility.

## 󠀁[Description](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#description)󠁿

Allows $name to be an array that accepts either three elements to grab the first
element and the third for the name or just uses the first element of the array for
the name.

Passes to [wp_register_sidebar_widget()](https://developer.wordpress.org/reference/functions/wp_register_sidebar_widget/)
after argument list and backward compatibility is complete.

### 󠀁[See also](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#see-also)󠁿

 * [wp_register_sidebar_widget()](https://developer.wordpress.org/reference/functions/wp_register_sidebar_widget/)

## 󠀁[Parameters](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#parameters)󠁿

 `$name`string|intrequired

Widget ID.

`$output_callback`callablerequired

Run when widget is called.

`$classname`stringoptional

Classname widget option. Default empty.

`$params`mixedoptional

Widget parameters.

## 󠀁[Source](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#source)󠁿

    ```php
    function register_sidebar_widget($name, $output_callback, $classname = '', ...$params) {
    	_deprecated_function( __FUNCTION__, '2.8.0', 'wp_register_sidebar_widget()' );
    	// Compat.
    	if ( is_array( $name ) ) {
    		if ( count( $name ) === 3 ) {
    			$name = sprintf( $name[0], $name[2] );
    		} else {
    			$name = $name[0];
    		}
    	}

    	$id      = sanitize_title( $name );
    	$options = array();
    	if ( ! empty( $classname ) && is_string( $classname ) ) {
    		$options['classname'] = $classname;
    	}

    	wp_register_sidebar_widget( $id, $name, $output_callback, $options, ...$params );
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/deprecated.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/6.9.4/src/wp-includes/deprecated.php#L2124)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/6.9.4/src/wp-includes/deprecated.php#L2124-L2142)

## 󠀁[Related](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#related)󠁿

| Uses | Description | 
| [sanitize_title()](https://developer.wordpress.org/reference/functions/sanitize_title/)`wp-includes/formatting.php` |

Sanitizes a string into a slug, which can be used in URLs or HTML attributes.

  | 
| [wp_register_sidebar_widget()](https://developer.wordpress.org/reference/functions/wp_register_sidebar_widget/)`wp-includes/widgets.php` |

Registers an instance of a widget.

  | 
| [_deprecated_function()](https://developer.wordpress.org/reference/functions/_deprecated_function/)`wp-includes/functions.php` |

Marks a function as deprecated and inform when it has been used.

  |

[Show 1 more](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#)
[Show less](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#)

## 󠀁[Changelog](https://developer.wordpress.org/reference/functions/register_sidebar_widget/?output_format=md#changelog)󠁿

| Version | Description | 
| [2.8.0](https://developer.wordpress.org/reference/since/2.8.0/) | Deprecated. Use [wp_register_sidebar_widget()](https://developer.wordpress.org/reference/functions/wp_register_sidebar_widget/)  | 
| [2.2.0](https://developer.wordpress.org/reference/since/2.2.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Ffunctions%2Fregister_sidebar_widget%2F)
before being able to contribute a note or feedback.