Drupal is a registered trademark of Dries Buytaert

svg_sprite

12 sites Security covered
View on drupal.org

This module adds a new field type called SVG Sprite. Using this field you can select an icon from a dropdown list which is auto-generated from a SVG Sprite file.

It reads the SVG Sprite and automatically adds every <symbol id="">...</symbol> to the list, which is typically how SVG Sprites are generated.

It outputs something similar to file.svg#symbol-id using a dedicated field formatter.

A submodule is available to allow insertion of SVG sprites in CKEditor 5 WYSIWYG editor.

A small Twig extension is also available allowing to easily add an SVG sprite into your Twig templates.

Example: {{ svg_sprite('lightbulb') }}.

You can add custom attributes to your sprite Twig function:

{{ svg_sprite('lightbulb', {'class': 'my_css_class'}) }}

This will produce:

<svg class="sprite sprite-lightbulb my_css_class"...>
  ...
</svg>

An experimental token is also available: [svg_sprite:sprite:lightbulb] but might requires to allow svg and use HTML tags rendering in some contexts like Views (XSS).

A small utility function in the SvgSpriteHelper class shows how to programmatically override the Xss::$adminTags property to allow the use of the svg and use HTML tags.

Similar or related projects

Activity

Total releases
4
First release
Oct 2025
Latest release
3 months ago
Release cadence
13 days
Stability
75% stable

Release Timeline

Releases

Version Type Release date
1.1.4 Stable Nov 19, 2025
1.x-dev Dev Nov 17, 2025
1.1.3 Stable Nov 17, 2025
1.1.2 Stable Oct 10, 2025