Make WordPress Core

Changeset 43734


Ignore:
Timestamp:
10/16/2018 10:27:05 PM (6 years ago)
Author:
kadamwhite
Message:

REST API: Introduce themes endpoint to expose theme-supports values for the active theme.

In order to correctly render parts of its UI, the new editor needs to be aware of the active theme's post-formats and post-thumbnails support. This data is exposed by querying for the active theme on a new /wp/v2/themes endpoint for sufficiently privileged users.

props desrosj.
Fixes #45016.

Location:
branches/5.0
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/5.0/src/wp-includes/rest-api.php

    r42000 r43734  
    233233    // Settings.
    234234    $controller = new WP_REST_Settings_Controller;
     235    $controller->register_routes();
     236
     237    // Themes.
     238    $controller = new WP_REST_Themes_Controller;
    235239    $controller->register_routes();
    236240}
  • branches/5.0/src/wp-settings.php

    r41721 r43734  
    235235require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-comments-controller.php' );
    236236require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-settings-controller.php' );
     237require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-themes-controller.php' );
    237238require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-meta-fields.php' );
    238239require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-comment-meta-fields.php' );
  • branches/5.0/tests/phpunit/tests/rest-api/rest-schema-setup.php

    r43442 r43734  
    112112            '/wp/v2/comments/(?P<id>[\\d]+)',
    113113            '/wp/v2/settings',
     114            '/wp/v2/themes',
    114115        );
    115116
  • branches/5.0/tests/qunit/fixtures/wp-api-generated.js

    r43716 r43734  
    35173517            "_links": {
    35183518                "self": "http://example.org/index.php?rest_route=/wp/v2/settings"
     3519            }
     3520        },
     3521        "/wp/v2/themes": {
     3522            "namespace": "wp/v2",
     3523            "methods": [
     3524                "GET"
     3525            ],
     3526            "endpoints": [
     3527                {
     3528                    "methods": [
     3529                        "GET"
     3530                    ],
     3531                    "args": {
     3532                        "context": {
     3533                            "required": false,
     3534                            "description": "Scope under which the request is made; determines fields present in response.",
     3535                            "type": "string"
     3536                        },
     3537                        "page": {
     3538                            "required": false,
     3539                            "default": 1,
     3540                            "description": "Current page of the collection.",
     3541                            "type": "integer"
     3542                        },
     3543                        "per_page": {
     3544                            "required": false,
     3545                            "default": 10,
     3546                            "description": "Maximum number of items to be returned in result set.",
     3547                            "type": "integer"
     3548                        },
     3549                        "search": {
     3550                            "required": false,
     3551                            "description": "Limit results to those matching a string.",
     3552                            "type": "string"
     3553                        },
     3554                        "status": {
     3555                            "required": true,
     3556                            "description": "Limit result set to themes assigned one or more statuses.",
     3557                            "type": "array",
     3558                            "items": {
     3559                                "enum": [
     3560                                    "active"
     3561                                ],
     3562                                "type": "string"
     3563                            }
     3564                        }
     3565                    }
     3566                }
     3567            ],
     3568            "_links": {
     3569                "self": "http://example.org/index.php?rest_route=/wp/v2/themes"
    35193570            }
    35203571        }
Note: See TracChangeset for help on using the changeset viewer.