将自定义随机播放过滤器添加到 Timber/Twig
Add custom shuffle filter to Timber/Twig
我想打乱数组并在我的 functions.php
中添加以下过滤器
add_filter( 'timber/twig', function ( $twig ) {
$twig->addFilter( new Timber\Twig_Filter( 'shuffle', function ( $array ) {
$shuffle = shuffle( $array );
return $shuffle;
} ) );
return $twig;
} );
但是,下面的代码returns什么都没有:
{% for item in ["WordPress", "React", "Craft", "NodeJS", "Laravel", "Tailwind", "Vue", "Stencil"]|shuffle %}
<h2 class="outline">{{ item }}</h2>
{% endfor %}
根据 DarkBee 的评论,我使用以下代码让它工作:
add_filter( 'timber/twig', function ( $twig ) {
$twig->addFilter( new Timber\Twig_Filter( 'shuffle', function ( $array ) {
shuffle( $array );
$newArray = [];
foreach ( $array as $item ) {
array_push( $newArray, $item );
}
return $newArray;
} ) );
return $twig;
} );
我想打乱数组并在我的 functions.php
中添加以下过滤器 add_filter( 'timber/twig', function ( $twig ) {
$twig->addFilter( new Timber\Twig_Filter( 'shuffle', function ( $array ) {
$shuffle = shuffle( $array );
return $shuffle;
} ) );
return $twig;
} );
但是,下面的代码returns什么都没有:
{% for item in ["WordPress", "React", "Craft", "NodeJS", "Laravel", "Tailwind", "Vue", "Stencil"]|shuffle %}
<h2 class="outline">{{ item }}</h2>
{% endfor %}
根据 DarkBee 的评论,我使用以下代码让它工作:
add_filter( 'timber/twig', function ( $twig ) {
$twig->addFilter( new Timber\Twig_Filter( 'shuffle', function ( $array ) {
shuffle( $array );
$newArray = [];
foreach ( $array as $item ) {
array_push( $newArray, $item );
}
return $newArray;
} ) );
return $twig;
} );