Introduction


This Article will show:

  • How to include this Navigation Option when including the Blog
  • The Default Layouts with explanation
  • How to give the User Feedback on the type of results they are seeing.

To Include this Option

Include the following liquid to dynamically get a list of available Blog Categories for the User to select:

{%- include 'modules/siteglide_system/get/get_categories', categories_layout: 'default/categories', categories_layout_type: 'sidebar' -%}

The parameters refers to layout which will be used to display the Category links. <code>categories_layout</code>should be the root layout folder where your blog layout is contained. The category_layout_type is the sub-folder where the wrapper and item files are stored for filtering the blog list by category. The category_layout_type exists because some blog layouts may have a different partial layout for Categories within a Blog preview, footer or sidebar.

Default Layout Examples with Explanation

wrapper.liquid

<div class="row no-gutters">

  <div class="col-12">

    <h2>Categories</h2>

    <ul>

      {%- include 'modules/siteglide_system/get/get_items', item_layout: 'item' -%}

    </ul>

  </div>

</div>

 

item.liquid

<li><a href="{{context.location.pathname}}?category={{this.id}}">{{this.properties.name}}</a></li>

The link should be the slug of your Blog List view followed by ?category={{this.id}}. Siteglide will be able to read the Category id from the URL and populate the List View on refresh. In this example we use the context object to automatically get the slug of the current Blog Page.

User Feedback

You may wish to give the User some feedback about the current filter/ search terms that are applied on the Blog list page. For Categories, you can use <code>context.exports</code> object to get the name of the category you are filtering by:

{% if context.params.category %}

  Posts about {{context.exports.categories.data[context.params.category].name}}

{% endif %}
Did this answer your question?