0

下面给出的简码只返回第一个值:

function completed_quiz(){
    global $wpdb;
    $current_user = wp_get_current_user();
    $userID = $current_user->ID;
    $fetch22 = $wpdb->get_results("MySQL Query");
    foreach($fetch22 as $item){
    return "Quiz ID: $item->quiz_id Percentage: $item->result <br>";
    }
}   
add_shortcode('show_completed_quiz', 'completed_quiz');

但是,如果我使用“echo”,它会给出所有值。我在这里想念什么?

4

1 回答 1

1

在 foreach 中,将所有值存储在某个变量中,然后在 foreach 循环后返回该变量

    function completed_quiz(){
      global $wpdb;<br/>
       $current_user = wp_get_current_user();
       $userID = $current_user->ID;
       $fetch22 = $wpdb->get_results("MySQL Query");

       $returnVal ='';

       foreach($fetch22 as $item){

        $returnVal .= "Quiz ID: $item->quiz_id Percentage: $item->result <br>";

       }

       return $returnVal ;
     }   

add_shortcode('show_completed_quiz', 'completed_quiz');

于 2013-09-30T08:44:50.227 回答