如何将Wordpress中自定义查询的结果传递给另一个函数

时间:2016-12-21 09:39:50

标签: php wordpress function

我觉得这很简单,但到目前为止我找不到答案。

我在函数sc_start_custom_loop()中使用自定义查询,该函数通过自定义短代码触发。

function sc_start_custom_loop(){
    $args_assets = array(
        'post_type' => 'assets',
        'posts_per_page' => -1,
        'post__in' => $asset_ids,
        );

    $query_assets = new WP_Query($args_assets);
    if($query_assets->have_posts()) : while($query_assets->have_posts()) : $query_assets->the_post();

    output_custom_title();

    endwhile; else:
    _e('Sorry. No assets found!');
    endif; wp_reset_postdata();
}

function output_custom_title(){
    $ouput_title = '<p class="assets-title">'.$query_assets->post->post_title.'</p>';
    return $output_title;
}

但是,output_custom_title()中的$ query_assets-&gt; post-&gt; post_title为空。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

function sc_start_custom_loop(){
    $args_assets = array(
        'post_type' => 'assets',
        'posts_per_page' => -1,
        'post__in' => $asset_ids,
        );

    $query_assets = new WP_Query($args_assets);
    if($query_assets->have_posts()) : while($query_assets->have_posts()) : $query_assets->the_post();

    echo output_custom_title($query_assets);

    endwhile; else:
    _e('Sorry. No assets found!');
    endif; wp_reset_postdata();
}

function output_custom_title($query_assets){
    $ouput_title = '<p class="assets-title">'.$query_assets->post->post_title.'</p>';
    return $output_title;
}