2017-07-04 11 views

答えて

1

で立ち往生していますマクロ:

macros.twig:

{%- macro wmImage(article) -%} 
    {%- set src = article.watermarked ? asset(article.image.path) | imagine_filter('watermarked') : asset(article.image.path) -%} 
    <img src="{{ src }}"/> 
{%- endmacro -%} 
テンプレート(複数可)で

{%- import 'macros.twig' as 'macros' -%} 

Usage: 
{{ macros.wmImage(article) }} 
+0

よさそうだ、より良いアプローチ:)があるかどうかを見てみましょう、この演算子が存在して知りませんでした。 – nacholibre

+1

他のaproachだけが 'Twig_SimpleFunction'または' Twig_SimpelFilter'を使用しています – DarkBee

2

:または私はこれが

<img src='{{ article.isWatermarked() ? asset(article.image.path) | imagine_filter('watermarked') : asset(article.image.path) }}' /> 

がドキュメントに三項演算子を参照してください動作するはず

{% set src = asset(article.image.path) %} 
{% if article.isWatermarked() %} 
{% set src = asset(article.image.path) | imagine_filter('watermarked') %} 
{% endif %} 
<img src='{{ src }}' /> 
+0

マクロの巨大なファンではなく、1行分のコードですが、それは仕事をします – DarkBee