29th Dec '22
/
1 comment

Indirect Meta Box Relationship in Bricks

This Pro tutorial shows how to modify a Bricks' query loop parameters to only show the posts of a CPT that is indirectly related to the current single CPT item when using Meta Box.

Consider this scenario:

Custom Post Types:

  • Members
  • Orders
  • Trainings

Requirement: On a single member page, show all the related posts of training. Note that there is no direct relationship between member CPT and training CPT.

Relationships:

  • Members and Orders
  • Orders and Trainings

Sample posts:

  • Training 1 Connected From Order 2.
  • Training 2 Connected From Order 1 and 2.
  • Training 3 Connected From Order 1.
  • Member 1 Connected To Order 1.
  • Member 2 Connected To Order 2.

Objective:When viewing Member 1, show trainings 2 and 3. This is because Member 1 is connected to Order 1 and this order is connected to Training 2 and Training 3.

Screenshots:

Relationship: Orders and Trainings

Relationship: Members and Orders

We are also going to ensure that the Section in which the indirectly related CPT items are output gets rendered only if there is at least 1 such published CPT item.

Step 1

Create a Bricks template named say "Single Member" of type "Single".

Edit it with Bricks.

Add a Template setting condition for applying the template to Members CPT.

Add a Section having Post Title and Post Content.

Add another Section having a "Related Training" Heading. We are going to dynamically add "s" at the end of this heading text if there's more than one published indirectly-related training for the current member.

Add a Container having a Block.

Enable Query Loop on the Block. Select Trainings CPT.

Add a Post Title inside the Block.

At this stage, all the training CPT items will be output.

Step 2

Add the following in child theme's functions.php (w/o the opening PHP tag) or a code snippets plugin:

This is a BricksLabs Pro tutorial.

For full access login below or create your BricksLabs Pro account

Get access to all 633 Bricks code tutorials with BricksLabs Pro

Related Tutorials..

Random Meta Box Image

Random Meta Box Image

Displaying a random image from a set of images from a Meta Box Images Advanced-type field.
Categories:
Tags:
Pro
Previous Two Posts in Bricks Query Loop

Previous Two Posts in Bricks Query Loop

This Pro tutorial shows how we can modify the parameters of a Bricks query to limit the posts to the previous two whilst cycling to…
Pro
Meta Box Settings Fields in Bricks

Meta Box Settings Fields in Bricks

This Pro tutorial is the equivalent of our earlier ACF Options Fields in Bricks article but when using Meta Box. While retrieving the values of…
Categories:
Tags:
Pro
Meta Box Image Advanced Field Images in Bricks Query Loop

Meta Box Image Advanced Field Images in Bricks Query Loop

Updated on 3 Feb 2025 A user asked: Do you know what the best way to query an image from metabox gallery? I would like…
Categories:
Tags:
Pro
Posts Published in the Last x Days in Bricks

Posts Published in the Last x Days in Bricks

Updated on 1 Feb 2024 This Pro tutorial shows how to limit the posts output by either the Posts element or a Query Loop in…
Pro
Dynamic Post-specific Templates in Bricks using Meta Box/ACF Select Field

Dynamic Post-specific Templates in Bricks using Meta Box/ACF Select Field

Update on 23 Aug 2023: Added steps for ACF. Bricks builder v1.8.4 introduced an pretty useful filter called bricks/active_templates that flew under the radar. This…
Pods Relationship Field in Bricks

Pods Relationship Field in Bricks

In this Pro tutorial, we explore the Relationship field of Pods and share ways to output items of a related post type incl. the associated…
Categories: