Drupal is a registered trademark of Dries Buytaert
drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! bootstrap 8.x-3.40 Minor update available for theme bootstrap (8.x-3.40). menu_link_attributes 8.x-1.7 Minor update available for module menu_link_attributes (8.x-1.7). eca 3.1.1 Minor update available for module eca (3.1.1). layout_paragraphs 2.1.3 Minor update available for module layout_paragraphs (2.1.3). ai 1.3.3 Minor update available for module ai (1.3.3). ai 1.2.14 Minor update available for module ai (1.2.14). node_revision_delete 2.0.3 Minor update available for module node_revision_delete (2.0.3). moderated_content_bulk_publish 2.0.52 Minor update available for module moderated_content_bulk_publish (2.0.52). klaro 3.0.10 Minor update available for module klaro (3.0.10). klaro 3.0.9 Minor update available for module klaro (3.0.9). layout_paragraphs 2.1.2 Minor update available for module layout_paragraphs (2.1.2). geofield_map 11.1.8 Minor update available for module geofield_map (11.1.8).

string

12 sites Security covered
View on drupal.org

A Drupal module for managing and translating strings using "Keyword" philosophy.

t('Drupal is great');

t('drupal.great');

In the first method, messages are written in the language of the default locale (English in this case). That message is then used as the "id" when creating translations.

In the second method, messages are actually "keywords" that convey the idea of the message. The keyword message is then used as the "id" for any translations. In this case, translations must be made for the default locale (i.e. to translate drupal.great to Drupal is great).

String enables developers to,

  • define Keyword (i.e. drupal.great)
  • optionally provide a default value Drupal is great
  • integrate with core's translation api so that it works well with t function, locale import/export, editing interface translation, etc.

Documentation

For detailed documentation, please visit our documentation site.

Quick Links

Support

Sample usage

Current (Core) String t('Dashboard') t('dashboard.title') t('My Dashboard') t('user_dashboard.title') t('Welcome @name!', ['@name' => $name]) t('dashboard.welcome_message.title', ['@name' => $name]) format_plural($count, '1 item', '@count items') format_plural($count, 'search_result.item_count', 'search_result.item_count')

Activity

Total releases
6
First release
May 2025
Latest release
6 months ago
Release cadence
30 days
Stability
83% stable

Release Timeline

Releases

Version Type Release date
2.0.1 Stable Oct 8, 2025
2.0.0 Stable Aug 1, 2025
2.x-dev Dev Aug 1, 2025
1.2.0 Stable Jul 11, 2025
1.1.0 Stable May 14, 2025
1.0.0 Stable May 13, 2025