8th Mar '23
/
2 comments

Posts Grouped by ACF or Meta Box Select Field Value as Tabs in Bricks

Updated on 9 Mar 2023: Added Meta Box specific instructions.

This Pro tutorial provides the steps to show labels of an Advanced Custom Fields' Select-type of field as the tab titles and a list of all posts that have the corresponding meta value as the tab content when using Bricks' Tabs (Nestable) element.

Whilst it is possible to manually set the tab titles and multiple query loops in each tab content, the benefit of this method is that it is dynamic and needs no maintenance. The site admin or client can at any time simply change the choices of the select field, the order of the choices and the tabs will automatically reflect these changes.

In this example we are going to be dealing with a task custom post type that has a task_status custom field.

We shall

  • add a new "Task Status" type control to query loop options - in the dropdown.
  • create a function that should run when the above query type is selected in which we
    • get the ID of the latest task post
    • get all the task statuses for any post of the task post type
    • create and return an array having key and label named keys
  • create another function for returning the label or the key for the current task status being looped through for use with Bricks dynamic data tags.
  • apply our custom query to Tab menu > Div and call the second function that returns the choices' labels for the tab titles.
  • apply our custom query to Content > Pane and inside that, a Block with a Posts query to pull all the entries of the task CPT where task_status meta equals the choice key.

Step 1

Create your custom field group having a Select type of field with choices having value : label pairs and attach it to your post type.

Make sure that Return Format is set to Both (Array).

Step 2

Create/edit your post/CPT items and populate the custom field for each.

Step 3

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..

Pro
Setting a Bricks template for Parent pages

Setting a Bricks template for Parent pages

This Pro tutorial shows how bricks/active_templates filter can be used to programmatically assign a Bricks template to all singular pages (of any post type) that…
Pro
Filtering Cloneable Meta Box Group by Sub Field Value in Bricks

Filtering Cloneable Meta Box Group by Sub Field Value in Bricks

This Pro tutorial provides the steps to filter the rows of a Meta Box cloneable group to only those that have a date custom field…
Pro
Conditional Output Based on ACF Date Field in Bricks

Conditional Output Based on ACF Date Field in Bricks

Updated on 1 Aug 2024 Looking to have a Section or other elements in Bricks rendered on the frontend only if today's date is before…
Categories:
Pro
Post Titles and Post Content Tabs in Bricks

Post Titles and Post Content Tabs in Bricks

How to set up Nestable tabs with post titles as the tab menu, and post content and/or any other post-specific data as the tab content.
Categories:
Pro
Bricks Slider Images From ACF Flexible Content Sub Field

Bricks Slider Images From ACF Flexible Content Sub Field

Consider the following field group associated with Pages when using ACF Pro: "Page Fields" field group|_"Page Content" Flexible Content field|__"Layout 1" layout|___"Title" Text field|___"Layout 1…
Pro
ACF Group Sub Field Values from Matching Post Term

ACF Group Sub Field Values from Matching Post Term

In Bricks Reddit, a user asks: Let's break this down and set up the scenario practically. First, there's a Language taxonomy for posts (could be…
Categories: