date

O filtro de data é usado para converter um timestamp no formato especificado.
  • LiquidJS tenta estar em conformidade com Shopify/Liquid, que usa o core do Ruby Time###strftime(string). Há diferenças com as flags de formato do Ruby:
  • %Z (desde v10.11.1) é substituído pelo nome de timezone passado de LiquidOption ou valor in-place (veja TimeZone abaixo). Se o timezone passado for um número de offset em vez de string, se comportará como %z. Se não há timezone passado, retorna o fuso horário padrão do runtime.
  • LiquidJS fornece uma flag adicional %q para ordinais de data. ex. “ => 02nd of Feb
  • Literais de data são primeiro convertidos para objeto Date via new Date(), isso significa que valores literais são considerados no fuso horário do runtime por padrão.
  • O argumento de filtro de formato é opcional:
  • Se não fornecido, o padrão é %A, %B %-e, %Y at %-l:%M %P %z.
  • O padrão acima pode ser sobrescrito pela opção dateFormat do LiquidJS.
  • LiquidJS date suporta nomes de dias da semana e meses específicos do locale, que voltará para inglês onde Intl não é suportado.
  • Ordinais (%q) e filtros de data específicos do Jekyll são apenas em inglês.
  • locale pode ser definido ao criar instância Liquid. Padrão é Intl.DateTimeFormat().resolvedOptions.locale).

Examples

{{ article.published_at | date: '%a, %b %d, %y' }}
{{ "now" | date: "%Y-%m-%d %H:%M" }}
{{ '1990-12-31T23:30:28Z' | date: '%d%q of %b %Y at %I:%M %P %Z', -330 }}
Fri, Jul 17, 15
2020-03-25 15:57
01st of Jan 1991 at 05:00 am +0530;

TimeZone

  • Durante a saída, LiquidJS usa timezone local que pode ser sobrescrito por:
  • definir um timezone in-place ao chamar filtro date, ou
  • definir a opção timezoneOffset do LiquidJS
  • O padrão é o do runtime.
  • Offset pode ser definido como,
  • minutos: -360 significa '+06:00' e 360 significa '-06:00'
  • ID de timeZone: Asia/Colombo ou America/New_York
  • Veja aqui para valores do banco de dados TZ

Examples

{{ "1990-12-31T23:00:00Z" | date: "%Y-%m-%dT%H:%M:%S", 360 }}
{{ "1990-12-31T23:00:00Z" | date: "%Y-%m-%dT%H:%M:%S", "Asia/Colombo" }}
1990-12-31T17:00:00
1991-01-01T04:30:00

Input

Examples

{{ "1990-12-31T23:00:00Z" | date: "%Y-%m-%dT%H:%M:%S", 360 }}
{{ "March 14, 2016" | date: "%b %d, %y" }}
1990-12-31T17:00:00
Mar 14, 16

Data Atual

  • Para obter a hora atual, passe a palavra especial "now" ou "today" como entrada
  • Note que o valor será a hora atual de quando a página foi gerada pela última vez a partir do template, não quando a página é apresentada a um usuário se cache ou geração de site estático estiver envolvido

Example

Last updated on: {{ "now" | date: "%Y-%m-%d %H:%M" }}
Last updated on: {{ "today" | date: "%Y-%m-%d %H:%M" }}
Last updated on: 2020-03-25 15:57
Last updated on: 2020-03-25 15:57

date_to_string

Converte uma data para formato curto. Igual ao filtro date_to_string do Jekyll.
{{ site.time | date_to_string }}
07 Nov 2008
{{ site.time | date_to_string: "ordinal", "US" }}
Nov 7th, 2008
Note que JavaScript Date não tem informação de timezone, veja filtro de data para detalhes.

date_to_long_string

Converte uma data para formato longo. Igual ao filtro date_to_long_string do Jekyll.
{{ site.time | date_to_long_string }}
07 November 2008
{{ site.time | date_to_long_string: "ordinal" }}
7th November 2008
Note que JavaScript Date não tem informação de timezone, veja filtro de data para detalhes.

date_to_xmlschema

Converte uma Data para formato XML Schema (ISO 8601), igual ao filtro date_to_xmlschema do Jekyll.
{{ site.time | date_to_xmlschema }}
2008-11-07T13:07:54-08:00
Note que JavaScript Date não tem informação de timezone, veja filtro de data para detalhes.

date_to_rfc822

Converte uma Data para o formato RFC-822 usado para feeds RSS, igual ao filtro date_to_rfc822 do Jekyll.
{{ site.time | date_to_rfc822 }}
Mon, 07 Nov 2008 13:07:54 -0800
Note que JavaScript Date não tem informação de timezone, veja filtro de data para detalhes.