29th Sep '25
/
1 comment

HappyFiles Bricks Query Loop

This tutorial explores different ways in which images from WordPress Media Library organized via HappyFiles can be pulled and shown in Bricks using query loop(s).

Note that these are only needed when you want more control than what the ‘HappyFiles – Gallery’ Bricks element added by HappyFiles provides.

Table of Contents

HappyFiles folder images using nested query loops

Let’s consider the simple case of images in a “Business” folder.

To show these via Bricks query loops, we need to first loop through the ‘Business’ term HappyFiles folder (outer query) and inside that, Media post type attachments in the Business folder (inner query).

Outer query:

Inner query:

Structure:

To make the images clickable to show the full images in lightboxes,

Section JSON (so you copy and paste).

HappyFiles folder images using a single PHP query loop

If you’d like to use a single Bricks query loop, enable PHP query and paste:

// Query attachments in the HappyFiles category
$args = [
  'post_type' => 'attachment',
  'post_status' => 'inherit',
  'posts_per_page' => -1,
  'fields' => 'ids',
  'no_found_rows' => true,
  'tax_query' => [
    [
      'taxonomy' => 'happyfiles_category',
      'field' => 'slug',
      'terms' => 'business',
    ],
  ],
];

$hf_query = new WP_Query( $args );
$image_ids = $hf_query->posts;

// Return query args for Bricks
if ( ! empty( $image_ids ) ) {
  return [
    'post_type' => 'attachment',
    'post_status' => 'inherit',
    'posts_per_page' => -1,
    'no_found_rows' => true,
    'post__in' => $image_ids,
    'orderby' => 'post__in',
  ];
}

// Return empty result set
return [
  'post_type' => 'attachment',
  'post__in' => [ 0 ],
];

Replace business with the slug of your HF folder.

Sign code and save.

Section JSON.

HappyFiles folder images with BricksExtras Dynamic Lightbox

To have full control of what should appear inside the lightbox for each image from a specific HappyFiles folder, use Dynamic Lightbox element in BricksExtras.

For the ‘Small Image’ a CSS class of post-lightbox has been added.

Make sure it’s set to link to #.

Dynamic Lightbox settings:

Section JSON.

For showing the image description, you could use the x_attachment_description dynamic tag enclosed in curly braces.

Other dynamic tags that BricksExtras adds for attachments (images) are:

  • x_attachment_alt_text – Displays the attachment alt text.
  • x_attachment_title – Displays the attachment title.
  • x_attachment_url – Displays the attachment image URL.
  • x_attachment_caption – Displays the attachment caption text.

All the tutorials on HappyFiles in Bricks here. Also, see this Bricks forum post.

Get access to all 630 Bricks code tutorials with BricksLabs Pro

1 comment

Leave your comment

 

Related Tutorials..

Adding any Custom WP_Query loop to Bricks’ Query Loop

Adding any Custom WP_Query loop to Bricks’ Query Loop

Sometimes we may need to create a custom post loop using Bricks' query loop feature, but wish to use our own WP_Query code for more…
Pro
Query Loop Index in Bricks

Query Loop Index in Bricks

This Pro tutorial provides the code for getting the index of each post in Bricks' query loops. This can be used for either outputting the…
Categories:
Pro
Masonry Accordion Query Loops in Bricks Builder

Masonry Accordion Query Loops in Bricks Builder

Learn how to enable masonry layout for nestable accordions in Bricks builder and use JavaScript to re-layout the masonry on accordions' open and close.
Categories:
Tags:
How to populate a map with dynamic markers from a CPT using ACF in Bricks (PART 1)

How to populate a map with dynamic markers from a CPT using ACF in Bricks (PART 1)

This tutorial provides the PHP & JS codes that can be pasted in order to create a dynamic map with markers populated from a custom…
Categories:
Pro
Dynamic Horizontal Posts Accordion in Bricks

Dynamic Horizontal Posts Accordion in Bricks

Update on 8 Sep 2024: You may want to follow the newer version that considers accessibility. Looking to make a Horizontal Image Accordion dynamic? This…
Pro
Accordion Grid Query Loop in Bricks

Accordion Grid Query Loop in Bricks

How to set up a accordion in Bricks such that the "titles" are arranged in a grid with the full width content opening below.
Categories:
Random Posts in the Same Category as the Current Single CPT Post in Bricks

Random Posts in the Same Category as the Current Single CPT Post in Bricks

Here’s how query loop can be set in Bricks to show related posts by a taxonomy’s terms
Categories: