我使用wp_get_post_terms
创建了一个函数function subcategory() {
$args = array(
"fields" => "all",
'taxonomy' => 'videos_category',
'orderby' => 'ID',
'order' => 'DESC',
);
$categories = wp_get_post_terms($post->ID, 'videos_category', $args);
if ( ! empty( $categories ) ) {
echo $categories[0]->name;
}}
使用Laravel刀片模板,我调用函数如下:
@if( App\subcategory() )
<li class="pill-list__pill--accent">
<span>{{ App\subcategory() }}</span>
</li>
@endif
我正在使用命名空间App,因此App .. 我在下面的代码工作正常,如果我在模板本身使用Php标签...但不知道为什么我不能在函数中调用它。
非常感谢任何帮助,谢谢!
答案 0 :(得分:0)
Blade {{ }}
是echo
的简写。所以内部应该有一个变量,它是一个字符串或一个返回字符串的函数。你的函数实际上是echo
。因此,在PHP标记内部,它可以工作,但不适用于Blade echo标记。
更改函数以返回字符串,而不是回显它:
return $categories[0]->name;