Skip to content

POST/sites/$site/widgets/new

Activate a widget on a site.

Resource Information

   
Method POST
URL https://public-api.wordpress.com/rest/v1.1/sites/$site/widgets/new
Requires authentication? Yes

Method Parameters

Parameter Type Description
$site (string) Site ID or domain.

Query Parameters

Parameter Type Description
context (string)
display:
(default) Formats the output as HTML for display. Shortcodes are parsed, paragraph tags are added, etc..
edit:
Formats the output for editing. Shortcodes are left unparsed, significant whitespace is kept, etc..
http_envelope (bool)
false:
(default)
true:
Some environments (like in-browser JavaScript or Flash) block or divert responses with a non-200 HTTP status code. Setting this parameter will force the HTTP status code to always be 200. The JSON response is wrapped in an "envelope" containing the "real" HTTP status code and headers.
pretty (bool)
false:
(default)
true:
Output pretty JSON
meta (string) Optional. Loads data from the endpoints found in the 'meta' part of the response. Comma-separated list. Example: meta=site,likes
fields (string) Optional. Returns specified fields only. Comma-separated list. Example: fields=ID,title
callback (string) An optional JSONP callback function.

Request Parameters

Parameter Type Description
id_base (string) The base ID of the widget.
sidebar (string) Optional. The ID of the sidebar where this widget will be active. If empty, the widget will be added in the first sidebar available.
position (int) Optional. The position of the widget in the sidebar.
settings (object) Optional. The settings for the new widget.

Response Parameters

Parameter Type Description
id (string) The actual ID of the widget.
sidebar (string) The ID of the sidebar where this widget will be active.
position (int) The final position of the widget in the sidebar.
settings (array) The settings for the new widget.

Resource Errors

This endpoint does not return any errors.

Example

curl \
 -H 'authorization: Bearer YOUR_API_TOKEN' \
 --data-urlencode 'id_base=text' \
 --data-urlencode 'sidebar=sidebar-2' \
 --data-urlencode 'position=0' \
 --data-urlencode 'settings=Array' \
 'https://public-api.wordpress.com/rest/v1.1/sites/12345678/widgets/new'
<?php
$options  = array (
  'http' => 
  array (
    'ignore_errors' => true,
    'method' => 'POST',
    'header' => 
    array (
      0 => 'authorization: Bearer YOUR_API_TOKEN',
      1 => 'Content-Type: application/x-www-form-urlencoded',
    ),
    'content' => 
     http_build_query(  array (
        'id_base' => 'text',
        'sidebar' => 'sidebar-2',
        'position' => '0',
        'settings' => 
        array (
          'title' => 'hello world',
        ),
      )),
  ),
);

$context  = stream_context_create( $options );
$response = file_get_contents(
	'https://public-api.wordpress.com/rest/v1.1/sites/12345678/widgets/new',
	false,
	$context
);
$response = json_decode( $response );
?>