Blog · Masonry archive
A blog archive as a masonry wall: the archive title and description beside a search field, the categories as chips that filter the posts without reloading, FBK Post cards of different heights (text first, the photo in its own shape below) read in rows, and page numbers.
![]()
Full-page views: desktop, phone and dark mode

At 1440px wide.

At 390px wide.

With your site in dark mode.
See it live: Blog · Masonry archive on fancybricks.co — the live preview, and the button that copies it.
Preview on the front end. Scripts don't run inside the builder, so here you only see the layout: the cards sit in plain rows here; the masonry packing runs on the front end. Save and open the page to see the full result.
Structure
This is what the Bricks Structure panel shows after you paste the template. Component instances say which component they are.
Blog · Masonry archive
Container
Masonry · Header
Masonry · Head
Intro (FBK Intro)
Masonry · Search
Masonry · Search filter
Masonry · Topics
Masonry · Category filter
Masonry · Main
Masonry
Masonry · Post loop
Post card (FBK Post card)
Masonry · Pagination
Masonry · Script
The template also pastes a dashed note above the section, with the short version of this page. It only shows inside the builder, never on the published page — see Builder notes.
How to adjust
Every step is the same move: pick the element in the Structure panel, change its Properties.
How to adjust a template shows every one of them in a screenshot of the real builder: the Structure and Properties panels, the classes on an element, a component's style families and the field where a CSS variable goes.

The classes this element carries, in the Bricks panel.

This template's own component, with its Style group open.
- Paste the template in Bricks first — see Copy and paste.
- Select Intro (FBK Intro) › Properties: Eyebrow, Hide eyebrow, Title, Title level, Lead, Hide lead · Style group: Eyebrow style, Highlight, Title size, Accent line · Layout group: Alignment, Layout, Background, Spacing · Motion group: Reveal in slider.
- Select Post card (FBK Post card) › Properties: Read more text · Show group: Excerpt length, Hide excerpt, Hide Read more, Hide author, Hide photo, Author and date, Hide reading time, Hide comment count, Category, Date · Style group: Look, Tone, Shape, Padding, Title size · Layout group: Layout, Photo position, Photo shape, Title level, HTML tag · Motion group: Photo hover, Card hover.
- Select Masonry · Search filter › Content › Target query: the query loop it filters.
- Select Masonry · Category filter › Content › Target query and Filter source.
- Select Masonry · Pagination › Query › the query loop it pages.
- Select Masonry · Post loop (query loop) › Query: post type, number of posts, order and filters.
- Spacing, sizes, color and timing with no property of their own: the CSS variables below.
CSS variables
These are the only values in the template meant to be changed by hand. Copy the block, paste it, edit the numbers.

The Custom CSS field of this template's own element, with one of its variables as a real example.
/* «Masonry» · class .fbk-blogwall */
.fbk-blogwall {
/* Narrowest a column gets before the wall drops one (up to three) */
--fbk-t-min: 17em;
}
Paste the block in the element's Style → CSS field (the selector is already in it), or set the same variables on the class itself to change every copy at once. The values are your framework's variables, so they follow your site: Choosing a framework.
Requirements
- Code execution. Needs "Execute code" enabled for the role in Bricks → Settings → Custom code, or the JS block shows as plain text instead of running.
What each requirement is, and how to set it up once for the whole site: Requirements.
Finish by hand
- Posts: the query loop is on the li around Post card (Query: posts). Change the
number, order or category there. Each post needs a featured image (cards without one
show no photo). Card options are on Post card: what to show (category, date, author,
excerpt), look, layout, photo shape and hover. The line hover is the class
fbk-post--lineand the photo zoomfbk-post--zoom(both through the Card hover and Photo hover options). Here Post card shows the full excerpt, the reading time and the photo last, in its own shape. - Masonry: the wall is a grid and the small script in Masonry · Script gives each card
as many rows as it is tall, so the posts read in rows (newest at the top left, then to
the right) and each one sits under the shortest column. Without the script (and in the
builder) the cards sit in plain rows.
--fbk-t-minon.fbk-blogwallis the narrowest a column gets (up to three columns). - The page links are the Bricks Pagination element with the Fancy Bricks pagination
classes (
fbk-pager): its Query setting points at the query loop it pages; AJAX is on, so the list changes without reloading. Look, tone and shape come from the style families (fbk-uiclasses on the element: the house style is Soft · Neutral · Round). Styles: addfbk-pager--ring, --underline, --dot or --joined;fbk-pager--scaleis the optional hover effect (remove it for still numbers). The current page takes the color of the titles (--fbk-pager-current-fgand--fbk-pager-current-bgon.fbk-pager); it, the dimmed numbers and the hover are in the CSS of.fbk-pager(li > .current, li > a:hover). - Use it in a Bricks Archive template (conditions: blog archives, categories, tags…): open Masonry · Post loop and turn on Is main query, so it lists the category or tag being visited. The title is {archive_title} and the lead {archive_description} (outside an archive the title reads Archives).
- Filters: turn on Bricks > Settings > Performance > Query filters, then save this
template once in the builder so Bricks builds the filter index. The search and the
category chips point at Masonry · Post loop (Query: the loop) and update it without
reloading. The chips are a Radio filter in Display mode Button with the class
fbk-filter-chips(the chosen one is filled, with a check); the head is.fbk-blog-head(the search column is 20em wide) and the chips row.fbk-blog-topics.
On phones
The template is designed desktop first, the Bricks default, and only changes at the two widths the library uses:
- 991px and below —
.fbk-blog-head,.fbk-intro. - 767px and below —
.fbk-section.
Those changes live in Bricks' own breakpoint fields, so you edit them where you always do: pick the breakpoint in the toolbar and the same fields follow.
Careful with the classes shared by the whole library (fbk-section, fbk-intro, the
component classes): a change there shows up in every template that uses them.
If your site's breakpoints are set up mobile first, copy the mobile-first variant of the template instead — see Copy and paste.
Accessibility
In this template, keyboard focus is visible on every interactive piece; movement is cut back
when the visitor's system asks for less motion; the state screen readers need is already set
(aria-hidden).
What is checked on every template, and what depends on your own palette: Accessibility.
Dark mode
With your site in dark mode this section turns dark too — the class fbk-section--auto-dark
on the section does it. Remove the class to keep it light.
Its background is a modifier on the section, so you can swap it for any of the ones the
template is checked with: fbk-section--soft, fbk-section--dark, fbk-section--light.
How the library follows your site's color scheme: Dark mode and preview.
Replaces
- 02 - Archive posts - Masonry from Fancy Bricks 1.0
What happened to the old libraries, and what to do with pages already built with them: Migrating from 1.0/2.0.