Using date and time in templates
Formatting and comparison on dates and times
Format a date/time to output a specific format.
Example | Output |
{{ timestamp|datefmt('long') }} | January 1, 2021 |
{{ timestamp|datefmt('Y') }} | 2021 |
More examples of the formats available can be found here: http://babel.pocoo.org/en/latest/dates.html#date-fields
This is quick access to the current date and time
<p>The current date is: {{ now|datefmt('MMMM d') }}</p>
Output
<p>The current date is: January 1</p>
Output the name of the day using the "0 index" of the day of the week.
{{ 3|day_name }}
Output
Wednesday
Utility to parse a date from a string
{{ '2021-09-01'|to_date }}
Optionally, you can also pass a format to the parsing
{{ '9/1/2021'|to_date(format='%m/%d/%y') }}
Can be used to convert unix timestamps (i.e. an integer) into date/time to be used by other functions.
{{ 1284101485|from_timestamp|datefmt('long') }}
Output
September 9, 2010
Using the advanced jinja2 templating to hide a piece of content depending on the date. This can be used to have something show up before/after/during a date range.
This uses our
to_date
jinja filter. Take note of the greater than and less than operators.The
to_date
is parsed as the first minute and hour of the day so using greater and less than operators is the best way to write the conditionals.Show something if the date is today
{% if '2018-12-11'|to_date|is_today %}
<p>I will show if Dec 12, 2018 is today</p>
{% endif %}
Show something if the date is in the future
{% if '2018-12-11'|to_date|is_future %}
<p>I will show if Dec 12, 2018 is in the future</p>
{% endif %}
Show something if the date is in the past
{% if '2018-12-11'|to_date|is_past %}
<p>I will show if Dec 12, 2018 is in the past</p>
{% endif %}
Show something if the date is today or in the future
{% if '2018-12-11'|to_date|is_today or '2018-12-11'|to_date|is_future %}
<p>I will show if Dec 12, 2018 is today or is in the future</p>
{% endif %}
The
now
is the current date and time{% if now > '2018-12-11'|to_date %}
<p>I will start showing on Dec 11, 2018</p>
{% endif %}
{% if now < '2018-12-11'|to_date %}
<p>I will stop showing on Dec 11, 2018</p>
{% endif %}
{% if now > '2018-12-01'|to_date and now < '2019-01-01'|to_date %}
<p>I will show for the whole month of December</p>
{% endif %}