Есть ли способ в twig отображать переменную в литералах, например?

{{ mb.get_the_post_thumbnail( post.ID, 'full', {'class': 'sec-mitarbeiter-image {{objectPositionClass}} '} ) }}

Результат:

Class = "sec-mitarbeiter-image {{objectPositionClass}}"

< Сильный > Ожидаемое :

Class = "sec-mitarbeiter-image object-position-top"

-2
schietegal 11 Окт 2021 в 13:39

3 ответа

Лучший ответ

Думаю, вам нужна простая конкатенация строк:

{{ mb.get_the_post_thumbnail(post.ID, 'full', {
    'class': 'sec-mitarbeiter-image ' ~ objectPositionClass
}) }}

Или интерполяцией:

{{ mb.get_the_post_thumbnail(post.ID, 'full', {
    'class': "sec-mitarbeiter-image #{objectPositionClass}"
}) }}
0
Yoshi 11 Окт 2021 в 11:19

Попробуй это

{{ mb.get_the_post_thumbnail( post.ID, 'full', {'class': `sec-mitarbeiter-image $objectPositionClass `} ) }}

0
Mainul Hasan 11 Окт 2021 в 10:56

Попробуй это. Я думаю, вы упускаете возможность использовать $ с именем переменной. и {{ работают так же, как <?php, поэтому нет необходимости использовать его снова.

{{ mb.get_the_post_thumbnail( post.ID, 'full', {'class': 'sec-mitarbeiter-image $objectPositionClass '} ) }}
0
Yogendra 11 Окт 2021 в 11:10