我可以将我的 php 代码传递给木材的树枝代码吗
can i pass my php code to twig code of timber
我想知道我是否可以将任何类型的PHP代码转换为twig,我想知道的是,例如,我是否可以通过代码。
<?php
if (ICL_LANGUAGE_CODE == 'in'):?
到
{{ lang.en }}
有没有办法添加任何 PHP 代码并将其变成树枝并识别它?
我使用 WordPress 的 Timber 模板。
有一个传递函数的好方法(更准确地说,将函数注册到 Twig)。
使用木钩:timber/twig
过滤器钩子中有一个class timber/twig
可以帮助我们将函数传递给Twig。它调用 Timber\Twig_Function
.
new Timber\Twig_Function(
'function_name_that_will_be_called_in_Twig',
'function_name_in_php'
);
// OR
new Timber\Twig_Function(
'function_name_that_will_be_called_in_Twig',
function( $input ) {
// anonymous function is ok too.
}
);
functions.php
add_filter( 'timber/twig', 'add_to_twig' );
function hello_in_php( $name = 'world' ) {
$hello = 'Hello ';
$hello .= $name;
return $hello;
}
function add_to_twig( $twig ) {
$func = new Timber\Twig_Function('hello', 'hello_in_php');
$filter = new Timber\Twig_Function('introduce', function( $name ) {
return "I'm ${name}!";
});
$twig->addFunction($func); //Registering a pre-defined function
$twig->addFunction($filter); //Registering a filter function
return $twig;
}
index.twig:
<p id='a'>{{ hello() }}</p>
<p id='b'>{{ hello('who?') }}</p>
<p id='c'>{{ "Batman"|introduce }}</p>
结果是:
<p id='a'>Hello World</p>
<p id='b'>Hello who?</p>
<p id='c'>I'm Batman!</p>
来源:https://timber.github.io/docs/guides/extending-timber/#adding-functionality-to-twig
你的意思是这样的比较?
{% if constant('ICL_LANGUAGE_CODE') == 'en' %}
{# your output here #}
{% endif %}
我想知道我是否可以将任何类型的PHP代码转换为twig,我想知道的是,例如,我是否可以通过代码。
<?php
if (ICL_LANGUAGE_CODE == 'in'):?
到
{{ lang.en }}
有没有办法添加任何 PHP 代码并将其变成树枝并识别它?
我使用 WordPress 的 Timber 模板。
有一个传递函数的好方法(更准确地说,将函数注册到 Twig)。
使用木钩:timber/twig
过滤器钩子中有一个class timber/twig
可以帮助我们将函数传递给Twig。它调用 Timber\Twig_Function
.
new Timber\Twig_Function(
'function_name_that_will_be_called_in_Twig',
'function_name_in_php'
);
// OR
new Timber\Twig_Function(
'function_name_that_will_be_called_in_Twig',
function( $input ) {
// anonymous function is ok too.
}
);
functions.php
add_filter( 'timber/twig', 'add_to_twig' );
function hello_in_php( $name = 'world' ) {
$hello = 'Hello ';
$hello .= $name;
return $hello;
}
function add_to_twig( $twig ) {
$func = new Timber\Twig_Function('hello', 'hello_in_php');
$filter = new Timber\Twig_Function('introduce', function( $name ) {
return "I'm ${name}!";
});
$twig->addFunction($func); //Registering a pre-defined function
$twig->addFunction($filter); //Registering a filter function
return $twig;
}
index.twig:
<p id='a'>{{ hello() }}</p>
<p id='b'>{{ hello('who?') }}</p>
<p id='c'>{{ "Batman"|introduce }}</p>
结果是:
<p id='a'>Hello World</p>
<p id='b'>Hello who?</p>
<p id='c'>I'm Batman!</p>
来源:https://timber.github.io/docs/guides/extending-timber/#adding-functionality-to-twig
你的意思是这样的比较?
{% if constant('ICL_LANGUAGE_CODE') == 'en' %}
{# your output here #}
{% endif %}