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). Varbase Media Header 9.2.1 Minor update available for module varbase_media_header (9.2.1). 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.

This module provides a meta token that allows you to modify the output of existing tokens using various functions like converting case, encoding, trimming, and limiting length. You can even chain multiple modifiers together for more complex transformations.

Token modifier provides a meta token that allows you to modify the output of other tokens.

Usage

To use these token modifiers, you simply add a prefix to your existing token.

[token-modifier:{modifier}:{existing token}]

The modifiers should work anywhere the existing token would work. It passes through all the context available to the original token.

For example: output the current users' username as title case:

[token-modifier:title-case:current-user:name]

Included modifiers

  • urlencode: URL Encodes the returned string.
  • title-case: Uppercases the first letter of each word using ucwords.
  • uppercase: Uppercases all characters.
  • lowercase: Lowercases all characters.
  • uppercase-first: Uppercases the first letter of the string.
  • length: Limits the maximum length of the string.
    e.g. [token-modifier:length:8:current-user:name]
  • trim: Strips whitespace from the beginning and end of a string.
  • ltrim: Strips whitespace from the beginning of a string.
  • rtrim: Strips whitespace from the end of a string.
  • strip-tags: Removes HTML tags.

Chaining

Chaining modifiers is possible. Just keep prepending token-modifier:{modifier} to the front of the token.

Extend (D7 only)

Token Modifiers uses the ctools plugin system to allow other modules to provide their own modifiers.

To get started:

  1. Copy one of the existing plugin files within token_modifier/plugins/token_modifer to a plugins/token_modifier folder in your module and modify the details. The filename of your .inc file is used in the token.
  2. Implement hook_ctools_plugin_directory in your module. Look at token_modifier_ctools_plugin_directory as an example.

Contributing

I'll gladly bundle more modifiers that I think are going to be widely useful. Create an issue in the issue queue (ideally with a patch ready to go) and I'll take a look.

Contributed Modifiers

These modifiers have been contributed but haven't been included in the main module due to a narrow use-case, however you can implement the plugins in your own custom module.

Activity

Total releases
4
First release
Jan 2025
Latest release
8 months ago
Releases (12 mo)
2
Maintenance
Slowing

Release Timeline

Releases

Version Type Release date
2.0.6 Stable Nov 17, 2025
2.0.4 Stable Aug 6, 2025
2.0.3 Stable May 22, 2025
2.0.2 Stable Jan 25, 2025