Back to Twig

``html_classes``

doc/functions/html_classes.rst

3.24.0912 B
Original Source

html_classes

The html_classes function returns a string by conditionally joining class names together:

.. code-block:: html+twig

<p class="{{ html_classes('a-class', 'another-class', {
    'errored': object.errored,
    'finished': object.finished,
    'pending': object.pending,
}) }}">How are you doing?</p>

.. note::

The ``html_classes`` function is part of the ``HtmlExtension`` which is not
installed by default. Install it first:

.. code-block:: bash

    $ composer require twig/html-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\Html\HtmlExtension;

    $twig = new \Twig\Environment(...);
    $twig->addExtension(new HtmlExtension());