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
  • Unidirectional relations
  • Bidirectional relations
  1. Integrations
  2. Bricks builder

Working with relational fields inside query loops

Learn how to use relational fields in Bricks loop

PreviousWorking with Slider (Nestable) and Gallery fieldNextAdditional options

Last updated 9 months ago

The relational fields can be used in the Brick builder query loops.

Unidirectional relations

First of all, you need to .

Now, suppose you want to loop the posts belonging to a certain Movie in a unidirectional relation.

Inside the Movie single or archive template you need to set a query loop using a custom PHP code:

The code will be something like this:

// The relational field. Follow this syntax: {cf_box_field}
$postIds = '{cf_m_rel}'; 
$postIds = explode(",", $postIds);

return [
  'post_type' => 'post', // or change if it is not the right post type
  'posts_per_page' => -1, // to display all the posts
  'post__in' => $postIds,
];

The variable $postIds represents the post IDs to be queried in the loop.

Bidirectional relations

Let's see an example.

First of all, suppose you have a CPT called movie and another one called post.

Setup a one-one bidirectional relation between.

You'll have something like this:

Now, move to Bricks editor.

To fetch all the posts from the above relational field value, you need to set a query loop adding a custom meta query:

  • meta keys: the name of the movie meta field

  • value: {post_id}

  • operator: LIKE

In this case, only one post will be fetched, since the relational is one-one.

enable code execution in Bricks