Drupal is a registered trademark of Dries Buytaert
Protected Pages 3.0.0 Major update available for module protected_pages (3.0.0). Commerce Core 3.3.8 Minor update available for module commerce (3.3.8). Search API HTML Element Filter 1.0.7 Minor update available for module search_api_html_element_filter (1.0.7). Layout Builder Reorder 2.0.1 Minor update available for module layout_builder_reorder (2.0.1). Ban 1.1.0 Minor update available for module ban (1.1.0). Field Formatter Range 2.0.0 Major update available for module field_formatter_range (2.0.0). Field Formatter Range 8.x-1.8 Minor update available for module field_formatter_range (8.x-1.8). UI Patterns (SDC in Drupal UI) 2.0.18 Minor update available for module ui_patterns (2.0.18). Search API Solr 4.3.11 Module search_api_solr updated after 14 months of inactivity (4.3.11). Provus Mega Menu Module provus_mega_menu crossed 1,000 active installs.

AP Style Date

2,022 sites Security covered
View on drupal.org

This module formats Drupal date fields to adhere to Associated Press (AP) style guidelines. It offers a field formatter and a Twig filter to control how dates, days of the week, months, and times are displayed.

Output Date fields as AP Style. This module aims to meet most of these requirements.

According to the AP Style book, Dates should be formatted as such

Dates

Always use numerical figures, without "st," "nd," "rd," or "th."

Days of the Week

Days of the week should be capitalized and not abbreviated.

Datelines

  • Datelines on stories should contain a city name, entirely in CAPITAL LETTERS, followed in most cases by the name of the state, county or territory where the city is located: "KANSAS CITY, Kan."
  • Prominent US and international cities can stand alone in datelines without a state or country listed. Consult the AP Stylebook for these cities.

Months

  • Capitalize the names of months in all uses.
  • When a month is used with a specific date, you may abbreviate "Jan." "Feb." "Aug." "Sept." "Oct." "Nov." and "Dec." All remaining months may not be abbreviated.
  • When a phrase uses only a month and a year, do not separate the year with commas. When a phrase refers to a month, day and year, set off the year with commas: "January 1972 was a cold month." "His birthday is Feb. 14, 1987."

Time

When describing events that have occurred within a seven day time period from the writing of the story, it is acceptable to use days of the week such as "Monday." For any period of time beyond these seven days, use a month and a figure for dates.

  • Use numerical figures except for "noon" and "midnight."
  • Use a colon to separate hours from minutes and keep times in lower case: 2:30 p.m.
  • Spell out the units of measurement in time sequences: "50 hours, 23 minutes, 14 seconds."

Time before date before place (think TDP).

Example: The speech will be 3 p.m. Thursday in Reineke Fine Arts Center. If the event takes place within the week, use just the day; otherwise use dates.

Twig filter

This module is quite stable, but may not cover the complete rule set of AP style. It currently works by providing a field formatter for date fields, so you can use it by configuring the display of your date fields and changing the formatter to "AP Style". There are several options you can configure to control the output.

Along with applying field formatters and view field displays, there is also a twig filter to apply to a raw timestamp field value. It may look something like this:
It can look something like this:
{{ content.field_article.0.entity.published_at.value|ap_style({"always_display_year": TRUE, "display_time": TRUE}) }}

Similar modules

Activity

Total releases
12
First release
Jul 2025
Latest release
6 months ago
Releases (12 mo)
11 ▲ from 1
Maintenance
Slowing

Release Timeline

Releases

Version Type Release date
3.1.x-dev Dev Jan 6, 2026
3.0.0 Stable Jan 6, 2026
2.1.2 Stable Nov 13, 2025
2.1.1 Stable Nov 13, 2025
3.0.0-rc1 Pre-release Nov 7, 2025
2.1.0 Stable Nov 7, 2025
3.0.x-dev Dev Sep 5, 2025
2.1.0-rc1 Pre-release Sep 4, 2025
2.1.0-alpha1 Pre-release Sep 3, 2025
2.1.x-dev Dev Sep 3, 2025
2.0.x-dev Dev Aug 28, 2025
8.x-1.11 Stable Jul 14, 2025