REST API Enabler

Enable the REST API for custom post types and custom fields.

Author:Mickey Kay Creative (profile at wordpress.org)
WordPress version required:3.5
WordPress version tested:4.4.32
Plugin version:1.1.0
Added to WordPress repository:09-10-2015
Last updated:04-07-2016
Warning! This plugin has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.
Rating, %:100
Rated by:3
Plugin URI:http://wordpress.org/plugins/rest-api-enabler
Total downloads:9 204
Active installs:300+
plugin download
Click to start download

Like this plugin? Please consider leaving a 5-star review.

By default, custom post types and custom fields are not accessible via the WordPress REST API. REST API Enabler allows you to:

  1. Enable the WP REST API for custom post types and specify WP REST API custom endpoints.
  2. Choose which custom fields to include in WP REST API responses for posts, pages, and custom post types.

All enabled custom field data is included in the REST API response, nested under the rest_api_enabler key, like so:

[
  {
    "id": 179,
    "date": "2016-07-03T18:06:50",
    "title": {
      "rendered": "Test Job"
    },
    .
    .
    .
    "rest_api_enabler": {
      "custom_meta_1": "Value 1",
      "custom_meta_2": "Value 2",
      "custom_meta_3": [
        "Array value 1",
        "Array value 2"
      ]
    }
  }
]

Note: prior to verion 1.1.0, all meta keys were included as top-level keys in the API response. Additionally, all values were returned as arrays, regardless of whether the original value was actually an array. This functionality is now deprecated as it risks key-name collisions. Please reference the rest_api_enabler top-level key instead.

Usage

  1. Activate the plugin, then go to Settings → REST API Enabler in the admin.
  2. Click the Post Types tab to enable/disable post types and customize their endpoints.
  3. Click the Post Meta tab to enable/disable post meta (custom fields).

NOTE: by default, the plugin does not display settings for protected post meta (post meta that begins with an underscore and is intended for internal use only). If you wish to include protected post meta in the plugin settings, you can use the rae_include_protected_meta filter to do so. The following code can be placed in your theme’s functions.php file, or in a custom plugin (on init priority 10 or earlier):

add_filter( 'rae_include_protected_meta', '__return_true' );

Screenshots
ChangeLog