Skip to main content

Blog · Search results

A search results page: the search field on top, the number of results and a list of rows with the type, date, title, excerpt and address of each result.

Blog · Search results

Full-page views: desktop, phone and dark mode

Blog · Search results, desktop at 1440px wide

At 1440px wide.

Blog · Search results, on a phone at 390px wide

At 390px wide.

Blog · Search results, with the site in dark mode

With your site in dark mode.

See it live: Blog · Search results on fancybricks.co — the live preview, and the button that copies it.

Structure​

This is what the Bricks Structure panel shows after you paste the template. Component instances say which component they are.

Blog · Search results
Container
Results · Head
Intro (FBK Intro)
Results · Search
Results · Search filter
Results · List block
Results · Count
Results
Results · Loop
Result · Body
Result · Meta
Result · Type
Result · Date
Result · Title
Result · Excerpt
Result · Address
Result · Arrow
Results · Pagination

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.

Where are those panels?

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.

The classes this element carries, in the Bricks panel.

This template's own component, with its Style group open.

This template's own component, with its Style group open.

  1. Paste the template in Bricks first — see Copy and paste.
  2. 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.
  3. Select Results · Search filter › Content › Target query: the query loop it filters.
  4. Select Results · Pagination › Query › the query loop it pages.
  5. Select Results · Loop (query loop) › Query: post type, number of posts, order and filters.
  6. 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.

The Custom CSS field of this template's own element, with one of its variables as a real example.

/* «Results» · class .fbk-wf-search */
.fbk-wf-search {
/* Row tint on hover and how far it reaches past the text at the sides */
--fbk-t-row-hover: color-mix(in srgb, currentColor 5%, transparent);
--fbk-t-row-pad: var(--space-s);
}

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.

Finish by hand​

  • Use it in a Bricks template of type Search results, open Results · Loop and turn on Is main query, so the list shows what the visitor searched for. Outside a search page it lists your latest posts, pages and products (the loop's Query > Post type; the demo shows a small sample of them).
  • Search: the Bricks Search filter (turn on Bricks > Settings > Performance > Query filters and save the template once in the builder). It points at Results · Loop (Query) and updates the list and the number without reloading; the number is {query_results_count_filter:…}. When nothing matches, the loop shows its No results text (Query > No results).
  • A row: the type ({post_type}, a small tag of the style families), the date, the title (its link covers the row), a 28-word excerpt and the address on one line. Change what each loop shows in the query (post types, number per page).
  • 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-ui classes on the element: the house style is Soft · Neutral · Round). Styles: add fbk-pager--ring, --underline, --dot or --joined; fbk-pager--scale is the optional hover effect (remove it for still numbers). The current page takes the color of the titles (--fbk-pager-current-fg and --fbk-pager-current-bg on .fbk-pager); it, the dimmed numbers and the hover are in the CSS of .fbk-pager (li > .current, li > a:hover).
  • Hover: the class .fbk-wf-search--motion tints the row, colors the title and moves the arrow (states: %root% .fbk-wf-search__item:hover and :has(:focus-visible)). Remove it for still rows. Tint: --fbk-t-row-hover.

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-intro.
  • 767px and below — .fbk-wf-search__arrow, .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, aria-live).

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--light, fbk-section--dark, fbk-section--soft.

How the library follows your site's color scheme: Dark mode and preview.