Twig - How to randomise items in the array and loop them?

Run picture Run · Nov 16, 2016 · Viewed 10.4k times · Source

How can I randomise items in the array and loop them?

{% for item in article.resources|shuffle|slice(1) %}
    ...
{% endfor %}

I get this error:

Unknown "shuffle" filter in "partials/content.twig" at line 30.

If I use random():

{% for item in random(article.resources|slice(1)) %}

Nothing is returned.

Any ideas?

NOTES:

I don't want to use PHP btw.

Answer

Timurib picture Timurib · Nov 16, 2016

Twig Array Extension already has a shuffle() filter (based on PHP shuffle())