Php 如何将变量传递给细枝过滤器
如何将变量传递到细枝过滤器中,以实现以下功能:Php 如何将变量传递给细枝过滤器,php,twig,Php,Twig,如何将变量传递到细枝过滤器中,以实现以下功能: 这里thumbsize将是我要传递给过滤器的变量,这可能吗?过滤器resize需要两个参数才能工作(参见注释)。 当前,varthumbsize像字符串一样传递,因此被视为一个参数 您可以将varthumbsize从字符串更改为数组,然后按如下方式传递它: {{ post.thumbnail.src|resize(thumbsize[0],thumbsize[1]) }} 在PHP文件中,您需要定义thumbsize,并给它一个值: 本例仅设
这里
thumbsize
将是我要传递给过滤器的变量,这可能吗?过滤器resize
需要两个参数才能工作(参见注释)。
当前,varthumbsize
像字符串一样传递,因此被视为一个参数
您可以将varthumbsize
从字符串更改为数组,然后按如下方式传递它:
{{ post.thumbnail.src|resize(thumbsize[0],thumbsize[1]) }}
在PHP文件中,您需要定义
thumbsize
,并给它一个值:
本例仅设置宽度和高度比例:
$context=Timber::get_context();
$context['thumbsize']=300;
木材::渲染('my-template.twig',$context);
然后在细枝上:
此示例用于设置宽度和高度的值
$context=Timber::get_context();
$context['thumbsize']=数组('width'=>600,'height'=>400);
木材::渲染('my-template.twig',$context);
然后在细枝上:
要创建自己的筛选器吗?这个过滤器已经由Wordpress的Timber提供,在这种情况下,我需要的只是将thumbsize
作为变量传递到twig中。正如我上面的示例代码所示,它似乎不起作用。你需要定义变量thumbsize
,或者传递一个静态值,比如:{{foo.src | resize(150)}
谢谢@DarkBee,我确实有thumbsize作为变量,它会用{thumbsize}输出320240
但过滤器内部无法正常工作。如果我将320240
作为静态值直接传递给过滤器,它就会工作。我明白了。这意味着当thumbsize被视为一个字符串时,筛选器需要2个参数。您可以将thumbsize
var更改为数组,使其成为动态的