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 630 Bricks code tutorials with BricksLabs Pro

Related Tutorials..

Pro
Update Post Meta From Another Custom Field’s Value on Post Publish/Update when using Meta Box

Update Post Meta From Another Custom Field’s Value on Post Publish/Update when using Meta Box

In the Meta Box Facebook group a user asks: Hi all, wondering if I can get some help. For custom field 1, I am using…
Categories:
Tags:
Pro
ACF Relationship Select Filter in Bricks

ACF Relationship Select Filter in Bricks

In the BricksLabs Facebook group, a user asks: I'm learning about ACF relationships and attempting to output a list of posts on any given page,…
Categories:
Pro
Adding FAQ page Schema with SlimSeo Schema & Meta Box

Adding FAQ page Schema with SlimSeo Schema & Meta Box

SlimSeo Schema is a plugin by the people behind both SlimSEO & Meta Box. It takes care of adding all the page schema across your…
Categories:
Pro
Sorting ACF Relationship Posts by Date Meta in Bricks

Sorting ACF Relationship Posts by Date Meta in Bricks

Consider the following setup: CPT: Events ACF Fields:Event Date Information (Group)|__Event Date (Date Picker)Pick Sub Events (Relationship) An Event can have 1 or more related…