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.

System Tags

484 sites Security covered
View on drupal.org

This module allows developers to link specific content entities to their code without needing to know their IDs. Content can be tagged with custom labels, and then referenced in modules, blocks, or theme templates by these tags, simplifying dynamic content management.

This modules provides the bridge between content and code. It allows developers to use specific entities (like the news-overview page) in their module without knowing the ID of that piece of content.

Use cases:

  • I don't want to save the node id of the homepage in config, instead I tag a node with "Homepage" and System Tags will take care of the rest.
  • I want to show a list of popular news items in the sidebar on the news overview page, so I tag a node with "News overview" and configure the "System Tags"-condition of that list block to use the "News overview"-System Tag.
  • The url of an article should start with the alias of the overview page (/articles/my-news-article). This can be done by using the correct token in the Pathauto pattern for articles.

Setup

The setup is rather easy:

  • Add a reference field to the 'System Tag'-entity (eg. field_page_system_tag on Node type 'Page');
  • Mark a certain entity with a tag via the field you just created;
  • Take a look in Drupal\system_tags\Config\SystemPageConfigOverrider::loadOverrides for how to use this module in your code.

Twig support

A Twig function is included: system_tag_url. It allows 3 parameters: the System Tag ID (required), the entity type (default: node) and an array of options that will be passed to the \Drupal\Core\Entity\EntityInterface::toUrl()-function. Eg. <a href="{{- system_tag_url('homepage') -}}">.

Token support

For every entity type which has a reference field to System Tag, a token will be available. The structure will be the following: system_tags:ENTITY_TYPE--TAG_ID. Eg. [system_tags:node--homepage].

Theming support

When you enable the submodule system_tags_theme, all the configured System Tags, set for the current node, will be available as suggestions. This allows a themer to override the node.html.twig-template, based on the System Tag. Eg. node--system-tag--homepage.html.twig.

Activity

Total releases
1
First release
Mar 2025
Latest release
1 year ago
Releases (12 mo)
0 ▼ from 1
Maintenance
Dormant

Releases

Version Type Release date
3.0.3 Stable Mar 12, 2025