Drupal is a registered trademark of Dries Buytaert

edtf

4 sites No security coverage
View on drupal.org

This module adds a date field with support for the Extended Date/Time Format specification (EDTF). This allows varying precision, uncertain and approximate (date or) timestamps. Internally the timestamp will be saved as string. The ProfessionalWiki/EDTF library is used for validating and parsing.

Examples

  • 2023-12-24T18:00:00Z - On December 24, 2023 at 6PM in UTC
  • 2023-12-24T18:00:00 - On December 24, 2023 at 6PM in unspecified timezone
  • 2023-12-24 - The date "December 24, 2023"
  • 2023-12 - In the month December 2023
  • 2023-12-XX - on an unknown date in December 2023
  • 202x-12-24 - on December 24 in an unknown year in the 2020s
  • 2023? - it might have been in 2023, but it is uncertain
  • 2023-12~ - approx. in December 2023
  • 2023-12-01/2023-12-24 - the interval December 1st to 24th in 2023

API

When displaying timestamps, two formatters are available:

  • Plain: the timestamp will be shown as is
  • EDTF Humanizer: The humanizer of this library is used.

This module adds field tokens:

  • [node:field_name:year] - show only the specified year
  • [node:field_name:year_period] - show the specified year with 'X' in place of rightmost unspecified digits (e.g. '19xx')
  • [node:field_name:humanized] - the timestamp in humanized form

This module adds a few Twig filters for processing EDTF values:

  • {{ value|edtf_validate }} - check whether the value is valid (returns boolean).
  • {{ value|edtf_humanize }} - humanize the value in the current language (returns string or null if the value was not valid).
  • {{ value|edtf_year }} - returns the (minimum) year (returns int or null if the value was not valid).
  • {{ value|edtf_year_period }} - returns the year with 'X' in place of the rightmost unspecified digits (returns string or null if the value was not valid).
  • {{ value|edtf_min }} - returns the earliest UNIX timestamp (returns int or null if the value was not valid).
  • {{ value|edtf_max }} - returns the latest UNIX timestamp (returns int or null if the value was not valid).

Activity

Total releases
1
First release
Oct 2025
Latest release
4 months ago
Release cadence
Stability
0% stable

Releases

Version Type Release date
1.0.x-dev Dev Oct 17, 2025