Skip to content
Grav 2.0 is officially stable. Read the announcement →
Themes & Styling

User sorting date order on page collection

solved

Started by Matthew Appleton 8 years ago · 0 replies · 1004 views
8 years ago

Just wanted to post this little trick which might be useful for people building a blog where they want to allow the user to sort post order.

— in this case reverse the date order... this is courtesy of @OleVik and his inspiration (Project Space skeleton) and @Ricardo (found on Discord) ...

First thing: set the page collection order for the 'parent' page in the page, in this instance @Ricardo suggested a way to extract the date parameter...

TWIG
{% set date_order = uri.params('date')|split(':')|last %}
{% set ordered_collection = page.collection.order('date', date_order|defined('desc')) %}

then, again thanks to @Ricardo we can toggle the date order like so:

TWIG
{% if date_order is sameas('asc') %}
                    {% set toggle = 'desc' %}
                    {% else %}
                    {% set toggle = 'asc ' %}
                    {% endif %}

                    <a class="btn" href="{{ base_url }}/my-page/date:{{toggle}}">REVERSE DATE ORDER</a>
👍 2

Suggested topics

Topic Participants Replies Views Activity
Themes & Styling · by stuart young, 2 weeks ago
3 251 2 weeks ago
Themes & Styling · by Sebadamus, 3 weeks ago
5 317 2 weeks ago
Themes & Styling · by martynfoster735, 4 weeks ago
1 310 4 weeks ago
Themes & Styling · by Justin Young, 1 month ago
1 348 1 month ago
Themes & Styling · by Slebeig, 2 months ago
4 474 2 months ago