Link to WPGraphQL on Github
Link to WPGraphQL on WordPress.org

WPGraphQL for Metabox

This FREE plugin from @hsimah exposes fields registered using the popular http://MetaBox.io to the WPGraphQL Schema.

Community Plugin

View Plugin on Github

WPGraphQL-MetaBox: WPGraphQL provider for Meta Box

Quick Install

Download and install like any WordPress plugin.


The WPGraphQL documentation can be found here.

  • Requires PHP 7.3+
  • Requires WordPress 5.4+
  • Requires WPGraphQL 1.1.3+
  • Requires Meta Box 5.3.8+
  • Requires MB User Meta extension for User fields


This plugin provides an integration for Meta Box and WPGraphQL.

By simply adding an extra graphql_name property to the field registration the field will be exposed in the GraphQL schema.


This assume you know how to expose custom post types in WPGraphQL - read their documentation for further info.

Using Meta Box, define a custom field. Copy and paste the generated code to your functions.php (or where ever you store your custom code).

wp-graphql-metabox options

|option|type|effect| |--|--|--| |graphql_name|string|adds the field to the GraphQL object(s) identified in post_types| |graphql_mutate|boolean|adds the field to the GraphQL object(s) create and update mutation input|

Add in the graphql_name to the field definition:

That's it. The field randomNumber will be exposed on the type post. This will work for any custom post types you may create.

NB: You must expose custom types by adding show_in_graphql to the configuration of the CPT.

A simple query might look like this:


Currently the plugin only supports custom fields on post and user types (ie no Settings Pages).

Currently the plugin only supports using the following Meta Box types:

  • taxonomy
  • taxonomy_advanced
  • switch
  • checkbox
  • checkbox_list
  • background
  • color
  • custom_html
  • date
  • heading
  • datetime
  • oembed
  • password
  • radio
  • textarea
  • time
  • select
  • email
  • tel
  • text
  • url
  • wysiwyg
  • fieldset_text
  • select_advanced
  • text_list
  • key_value
  • number
  • range
  • single_image
  • user
  • post
  • group If you require a field which is not supported please feel free to submit an issue (or better yet, a PR!)