mirror of
https://github.com/twigphp/Twig.git
synced 2026-10-31 16:15:47 +00:00
62 lines
1.6 KiB
ReStructuredText
62 lines
1.6 KiB
ReStructuredText
``slug``
|
|
========
|
|
|
|
The ``slug`` filter transforms a given string into another string that
|
|
only includes safe ASCII characters.
|
|
|
|
Here is an example:
|
|
|
|
.. code-block:: twig
|
|
|
|
{{ 'Wôrķšƥáçè ~~sèťtïñğš~~'|slug }}
|
|
Workspace-settings
|
|
|
|
The default separator between words is a dash (``-``), but you can
|
|
define a separator of your choice by passing it as an argument:
|
|
|
|
.. code-block:: twig
|
|
|
|
{{ 'Wôrķšƥáçè ~~sèťtïñğš~~'|slug('/') }}
|
|
Workspace/settings
|
|
|
|
The slugger automatically detects the language of the original
|
|
string, but you can also specify it explicitly using the second
|
|
argument:
|
|
|
|
.. code-block:: twig
|
|
|
|
{{ '...'|slug('-', 'ko') }}
|
|
|
|
The ``slug`` filter uses the method by the same name in Symfony's
|
|
`AsciiSlugger <https://symfony.com/doc/current/components/string.html#slugger>`_.
|
|
|
|
.. note::
|
|
|
|
The ``slug`` filter is part of the ``StringExtension`` which is not
|
|
installed by default. Install it first:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ composer require twig/string-extra
|
|
|
|
Then, on Symfony projects, install the ``twig/extra-bundle``:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ composer require twig/extra-bundle
|
|
|
|
Otherwise, add the extension explicitly on the Twig environment::
|
|
|
|
use Twig\Extra\String\StringExtension;
|
|
|
|
$twig = new \Twig\Environment(...);
|
|
$twig->addExtension(new StringExtension());
|
|
|
|
Arguments
|
|
---------
|
|
|
|
* ``separator``: The separator that is used to join words (defaults to ``-``)
|
|
* ``locale``: The locale code of the original string as defined in `RFC 5646`_
|
|
|
|
.. _RFC 5646: https://www.rfc-editor.org/info/rfc5646
|