11th Mar '24
/
8 comments

Posts Grouped by Years and Months in Bricks

Posts Grouped by Years and Months in Bricks

Updated on 20 Aug 2024

This Pro tutorial provides the steps to display posts (can be of any post type) organized by months within years based on the published date in Bricks.

If you want to do the same but with a date-type custom field value, refer to Events grouped by years within months based on event date custom field value.

We shall

  • write a custom PHP function that prepares and returns the data needed in the form of three arrays (sample screenshot|mirror)
  • register two custom query types - one for years and another for months (in which there are published posts)
  • set up a Years query loop and within that, a Months query loop and within that, a Posts query loop to output posts that are published in the outer two loops i.e., that iteration of year and that iteration of month.

Step 1

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
Current Post’s Terms in Bricks

Current Post’s Terms in Bricks

Updated on 15 Jan 2024 This Pro tutorial provides the steps to set up a grid of terms (like categories) that the current post is…
Pro
Masonry for Query Loop in Bricks

Masonry for Query Loop in Bricks

If you are looking to implement masonry with a 'view more' button i.e., click-type of infinite scroll follow this tutorial instead. Updated on 15 Mar…
Categories:
Pro
How to Insert an Ad or an Element Between Posts in Bricks

How to Insert an Ad or an Element Between Posts in Bricks

How to insert an image or any Bricks element between posts output by a query loop.
Categories:
Tags:
Pro
Ordering Posts by Terms in Bricks

Ordering Posts by Terms in Bricks

How to output upcoming events at the top and past events below in a single query loop in Bricks.
Categories: