Hello! I am trying to get our blog listing page to be displayed into 3 columns accross versus the two that are showing using the standard blog content module.
I have tried creating custom modules and the posts then do not seem to filter in properly or show them all. I am guessing that is because it is not the standard Hubspot code for blogs to dynamically feed in?
I have also tried the 3 column module, but then the blogs are just listed 3 times in the columns.
@CFriedman6 You're absolutely right — HubSpot’s default blog listing module is built to be used with specific internal blog variables (content, contents, blog_author, etc.), and when creating custom modules from scratch, if those variables aren’t referenced correctly or if the loop isn't used properly, your posts won’t render dynamically.
nstead of creating a new custom module, the cleanest and most scalable way is to edit the existing blog listing template and modify the layout using CSS or grid logic. Here's how:
Go to your blog listing template (Design Tools > Your Blog > Listing Template).
Locate the loop where posts are rendered: {% for content in contents %} <div class="blog-card"> <!-- Blog card HTML: title, image, excerpt, etc. --> </div> {% endfor %}
Wrap the cards in a container like: <div class="blog-grid"> {% for content in contents %} <div class="blog-card"> <!-- Your content block --> </div> {% endfor %} </div>
@CFriedman6 You're absolutely right — HubSpot’s default blog listing module is built to be used with specific internal blog variables (content, contents, blog_author, etc.), and when creating custom modules from scratch, if those variables aren’t referenced correctly or if the loop isn't used properly, your posts won’t render dynamically.
nstead of creating a new custom module, the cleanest and most scalable way is to edit the existing blog listing template and modify the layout using CSS or grid logic. Here's how:
Go to your blog listing template (Design Tools > Your Blog > Listing Template).
Locate the loop where posts are rendered: {% for content in contents %} <div class="blog-card"> <!-- Blog card HTML: title, image, excerpt, etc. --> </div> {% endfor %}
Wrap the cards in a container like: <div class="blog-grid"> {% for content in contents %} <div class="blog-card"> <!-- Your content block --> </div> {% endfor %} </div>