dshgdhdfcas30210 2017-08-31 23:00
浏览 75
已采纳

Wordpress wp_get_post_terms函数不能在模板中工作

I have made a function using 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;  
}}

And using Laravel blade templating I call the function like so:

            @if( App\subcategory() )
                <li class="pill-list__pill--accent">
                    <span>{{ App\subcategory() }}</span>
                </li>
            @endif

I'm using a namespace App, hence the App.. The code I have below works fine if I have it in the template itself using Php tags... not sure why I can't call it in a function though.

Any help would be really appreciated, thanks!

  • 写回答

1条回答 默认 最新

  • dqq22391 2017-09-01 07:21
    关注

    Blade's {{ }} is shorthand for echo. So whatever is inside there should be a variable that is a string or a function which returns a string. Your function actually echos. So inside PHP tags it would work, but not in Blade echo tags.

    Change your function to return your string, not echo it:

    return $categories[0]->name;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程