Help needed: Page template shows all blog posts containing specific tag - only showing recent posts

Topic summary

A user successfully created a page template to display blog posts tagged “health” from their “news” blog, showing titles and excerpts. However, the template only displays recently published posts (approximately the last 30 days) instead of all matching posts.

Current Status:

  • The code uses {% for article in blogs.news.articles %} with a tag filter for “health”
  • Another user suggested a minor code modification, but this did not resolve the issue

Key Issue:
The limitation appears to be in how the loop retrieves articles, potentially related to Shopify’s default pagination or article retrieval limits.

Unresolved:
The discussion remains open with no working solution identified. The second user suggested verifying the tag is correct, but the core problem of accessing older posts persists.

Summarized with AI on November 24. AI used: claude-sonnet-4-5-20250929.

Hi everyone,

I successfully managed to create a page template that shows all blog posts matching a particular tag.

The code is below - it looks for blog posts with tag “health” in “news” blog. It then outputs the blog post title and an excerpt.

All works fine, however it only seems to show blog posts that were published recently (this month or last 30 days?).

Does anyone know why this is the case and what I can do to get it to show ALL matching blog posts?

Thank you!


  

    

      

        # {{ page.title }}
      

      
        {{ page.content }}

{% for article in blogs['news'].articles %} 
{% if article.tags contains 'health' %} 

       
        
 
  
          

                                 

                    

                      
                    

                  

 
            
   **{{ article.title }}**

    
  
                {{ article.content | strip_html | truncatewords: 50 }}
  
  

 {% endif %} 
 {% endfor %}
        
      

    

  

Hi @peeduh i do small change in your code please ad


  

    

      

        # {{ page.title }}
      

      
        {{ page.content }}

{% for article in blogs.news.articles %} 
{% if article.tags contains 'health' %} 

       
        
 
  
          

                                 

                    

                      
                    

                  

 
            
   **{{ article.title }}**

    
  
                {{ article.content | strip_html | truncatewords: 50 }}
  
  

 {% endif %} 
 {% endfor %}
        
      

    

  

d this code

Hi thank you for replying. That did not fix the issue :disappointed_face:

@peeduh Please check your tag this is correct or not.