2016-11-17 8 views
1

変数が真であるかどうかに基づいて出力を変更しようとしていますが、if文をforeachループ内に挿入しても何も表示されません。私は何が欠けていますか?PHPがTrueならfalseを返す

$odd = TRUE; 

     foreach ($recent as $item) { 

      if ($odd == TRUE) { 
       $out .= '<div class="col-sm-12 col-md-6">'; 
       $out .= '<a href="' . get_permalink($item['ID']) . '">'; 
       $out .= get_the_post_thumbnail($item['ID']); 
       $out .= '</a>'; 
       $out .= '</div><div class="col-sm-12 col-md-6">'; 
       $out .= get_the_excerpt($item['ID']); 
       $out .= '</div>'; 
       return FALSE; 
      } else { 
       $out .= '<div class="col-sm-12 col-md-6">'; 
       $out .= get_the_excerpt($item['ID']); 
       $out .= '</a>'; 
       $out .= '</div><div class="col-sm-12 col-md-6">'; 
       $out .= '<a href="' . get_permalink($item['ID']) . '">'; 
       $out .= get_the_post_thumbnail($item['ID']); 
       $out .= '</div>'; 
       return TRUE; 
      } 
     } 
+5

「復帰」は正しいことを知っていますか? – Federkun

+0

'$ out'変数はどこに出力されていますか? –

+0

戻り値を削除してecho exit文を使用する – RJParikh

答えて

0

$ oddを返す代わりに、このコードを使用して、値を変更してecho $ outを使用して、必要なものを実現します。

$odd = TRUE; 
$out = ''; 

foreach ($recent as $item) { 

    if ($odd == TRUE) { 
     $out .= '<div class="col-sm-12 col-md-6">'; 
     $out .= '<a href="' . get_permalink($item['ID']) . '">'; 
     $out .= get_the_post_thumbnail($item['ID']); 
     $out .= '</a>'; 
     $out .= '</div><div class="col-sm-12 col-md-6">'; 
     $out .= get_the_excerpt($item['ID']); 
     $out .= '</div>'; 
     $odd = FALSE; 
    } else { 
     $out .= '<div class="col-sm-12 col-md-6">'; 
     $out .= get_the_excerpt($item['ID']); 
     $out .= '</a>'; 
     $out .= '</div><div class="col-sm-12 col-md-6">'; 
     $out .= '<a href="' . get_permalink($item['ID']) . '">'; 
     $out .= get_the_post_thumbnail($item['ID']); 
     $out .= '</div>'; 
     $odd = TRUE; 
    } 
} 

echo $out; 
関連する問題