Wordpress Twigpress:Can';t将变量传递给细枝模板

Wordpress Twigpress:Can';t将变量传递给细枝模板,wordpress,twig,Wordpress,Twig,我正在Wordpress上使用Twigpress。根据,可以使用twigpress\u render\u twig\u模板($vals=array(),$template=false,$echo=true)将变量传递给模板。 我试图用下面的代码将变量传递给模板,但它不起作用。我做错了什么 single.php: $vals = array( 'foo' => 'bar' ); twigpress_render_twig_template($vals); {{ vals.foo }} #

我正在Wordpress上使用Twigpress。根据,可以使用twigpress\u render\u twig\u模板($vals=array(),$template=false,$echo=true)将变量传递给模板。

我试图用下面的代码将变量传递给模板,但它不起作用。我做错了什么

single.php:

$vals = array( 'foo' => 'bar' );
twigpress_render_twig_template($vals);
{{ vals.foo }} # Does not print anything #
{{ foo }} # Same #
{{ dump(vals) }} # Prints 'null' #
单枝:

$vals = array( 'foo' => 'bar' );
twigpress_render_twig_template($vals);
{{ vals.foo }} # Does not print anything #
{{ foo }} # Same #
{{ dump(vals) }} # Prints 'null' #

请开启一个n00b!谢谢。:)

您必须在细枝设置中启用调试

这就是我如何为我的小枝初始化。我把它放在一个单独的文件调用
twig init.php
中,只需
require\u一次
就可以使用twig

$loader = new Twig_Loader_Filesystem('/blah/twig/templates');
$settings = array(
    'cache' => '/blah/twig/compiled',
    'debug' => true
);
$twig = new Twig_Environment($loader, $settings);

if ($settings['debug'])
    $twig->addExtension(new Twig_Extension_Debug());
当您转储它时,只需执行
{{{dump()}}
即可转储所有内容

此外,您可能需要通过
\u上下文
访问数组值。尝试
{{dump(_context['foo'])}

如果确实希望通过VAL访问变量,则必须对数组执行以下操作:

$blah = array('vals' => array('foo' => 'bar'));
然后,
{{vals.foo}}
将起作用

见: