ACPT v2
  • General
    • Minimum requirements
    • Download the plugin
    • Install ACPT
    • Install ACPT with Composer
    • Managing your license
    • Migrating from v1
      • Fix data loss after migration from V1
    • Settings
    • Translations
    • How to open a ticket
  • Basics
    • Custom post types
    • Taxonomies
    • Post type-Taxonomy association
    • Option pages
  • Meta fields
    • Field groups
    • The meta fields manager
      • Group settings
      • Basics
      • Advanced options
      • Conditional rendering
      • Validation rules
    • Field types
      • Address field
      • Audio field
      • Audio multiple field
      • Color field
      • Country field
      • Currency field
      • Date field
      • Datetime field
      • Date range field
      • Editor field
      • Email field
      • Embed field
      • File field
      • Gallery field
      • HTML field
      • Icon field
      • Image field
      • Length field
      • List field
      • Number field
      • Password field
      • Phone field
      • QR Code field
      • Select, checkbox, and radio
      • Rating field
      • Repeater field
      • Relational field
      • Range field
      • Table field
      • Textarea field
      • Text field
      • Time field
      • Toggle field
      • URL field
      • Video field
      • Weight field
  • Permissions manager
    • Custom post types permissions
    • Taxonomies permissions
    • Option pages permissions
    • Meta fields permissions
  • Tools
    • Custom APIs
    • Health check
    • Datasets
    • Export data
    • Import data
  • Forms
    • Manage forms
    • The form builder
    • Examples of form usage
      • Create a new post type
      • Modify an existing post type
      • Create a new term
      • Modify an existing term
      • Create a new user
      • Modify an existing user
    • Form submissions log
  • Dynamic blocks
    • Create your first block
  • Developers
    • Functions
      • register_acpt_post_type
      • delete_acpt_post_type
      • register_acpt_taxonomy
      • delete_acpt_taxonomy
      • assoc_acpt_taxonomy_to_acpt_post
      • remove_assoc_acpt_taxonomy_from_acpt_post
      • register_acpt_option_page
      • delete_acpt_option_page
      • save_acpt_form
      • delete_acpt_form
      • save_acpt_form_field
      • delete_acpt_form_field
      • get_acpt_form_object
      • get_acpt_form_field_object
      • save_acpt_meta_group
      • delete_acpt_meta_group
      • get_acpt_meta_group_objects
      • get_acpt_meta_group_object
      • save_acpt_meta_box
      • delete_acpt_meta_box
      • get_acpt_box_object
      • save_acpt_meta_field
      • delete_acpt_meta_field
      • get_acpt_meta_field_objects
      • get_acpt_meta_field_object
      • save_acpt_meta_field_value
      • delete_acpt_meta_field_value
      • get_acpt_fields
      • acpt_field_has_rows
      • acpt_field_has_blocks
      • get_acpt_field
      • get_acpt_child_field
      • get_acpt_block
      • get_acpt_block_child_field
      • acpt_field
      • is_acpt_field_visible
    • Shortcodes
  • Integrations
    • API Rest field integration
    • Breakdance
      • Build a real estate website
      • Working with nestable fields
    • Bricks builder
      • Build a real estate website
      • Working with nestable fields
      • Working with Slider (Nestable) and Gallery field
      • Working with relational fields inside query loops
      • Additional options
      • Working with text links
    • Divi
    • Elementor
      • Basic field blocks
      • Nestable field blocks
      • Dynamic tags
    • Gutenberg
      • Basic fields block
      • Relational fields block
      • Repeater fields block
      • Working with FSE
    • Oxygen builder
    • Rank Math
    • SEOPress
    • Slim SEO
    • WooCommerce
    • WP All Import/Export
    • WP Grid Builder
    • WPGraphQL
    • WPML
    • Yoast
    • Zion builder
Powered by GitBook
On this page
  • First steps
  • Performing base queries
  • More advanced queries
  1. Integrations

WPGraphQL

WPGraphQL Integration

PreviousWP Grid BuilderNextWPML

Last updated 10 months ago

First steps

If you don't have WPGraphQL installed, install it from the .

Once it's installed, go to the main .

If you want to enable support for a particular custom post type, go to Edit > Settings, and here you'll find three new fields:

  • Show in GraphQL - set to true

  • GraphQL single name - the single name used for GraphQL queries

  • GraphQL plural name - the plural name used for GraphQL queries

Single and plural names must be different.

Please note that Post and Page posts have the WPGraphQL support enabled by default.

Performing base queries

Open up the GraphiQL IDE provided by WPGraphQL. Suppose you have a CPT named movie. In the left sidebar navigate to movies node; you'll notice a node called acpt in the edges.

Click to expand it. You find two main subnodes:

  • meta: the meta boxes array representation

  • product_data: the product data array (only for WooCommerce product CPT)

Now try to run this query by selecting all the meta subnodes:

{
  movies {
    edges {
      node {
        databaseId
        title
        acpt {
          meta {
            meta_box
            meta_fields {
              name
              type
              values
            }
          }
        }
      }
    }
  }
}

You'll obtain something like this:

More advanced queries

ACPT extends the base RootQuery adding the possibility to perform queries on meta.

Go again to movies, but this time expand the query node. Notice the meta_query subnode.

This node contains two subnodes:

  • elements - the array of query elements:

    • compare

    • key

    • type

    • value

    • value_num

  • relation - possible values: OR AND

This is an example of a query performed on meta fields:

{
  movies(
    where: {
      query: {
        meta_query: { elements: [{ key: "info_altro", value: "value" }] }
      }
    }
  ) {
    edges {
      node {
        id
        databaseId
        title
      }
    }
  }
}

We encourage you to use WPGraphQL in your projects, and read more about headless CMS Wordpress.

As you can imagine this mimics the logic.

official WordPress repository
ACPT dashboard
WP Query