deprecated
Twig generates a deprecation notice (via a call to the trigger_error()
PHP function) where the deprecated tag is used in a template:
1 2 3
{# base.html.twig #}
{% deprecated 'The "base.html.twig" template is deprecated, use "layout.html.twig" instead.' %}
{% extends 'layout.html.twig' %}
You can also deprecate a macro in the following way:
1 2 3 4 5
{% macro welcome(name) %}
{% deprecated 'The "welcome" macro is deprecated, use "hello" instead.' %}
...
{% endmacro %}
Note that by default, the deprecation notices are silenced and never displayed nor logged. See Recipes to learn how to handle them.
3.11
The package and version options were added in Twig 3.11.
You can optionally add the package and the version that introduced the deprecation:
1 2
{% deprecated 'The "base.html.twig" template is deprecated, use "layout.html.twig" instead.' package='twig/twig' %}
{% deprecated 'The "base.html.twig" template is deprecated, use "layout.html.twig" instead.' package='twig/twig' version='3.11' %}
Note
Don't use the deprecated tag to deprecate a block as the
deprecation cannot always be triggered correctly.