2013-03-19 4 views
1

J'ai curseur qui ne semble pas saisir correctement les liens vidéo.problème de boucle de foreach avec des champs personnalisés

C'est le code que j'ai:

 <?php $myCarousel = get_order_field('projectdetails_image'); // use the Custom Group name 
     if(!empty($myCarousel)) { 
       foreach($myCarousel as $carousel){ 
       $myimg = get('projectdetails_image',1,$carousel); 
        if (!$myimg) { 
        $videos = get_order_field('video_vimeo'); 
        foreach($videos as $video){ 
         if (get('video_vimeo',TRUE)) { 
           echo "<div class='item active black'><div id='video-wrap'>"; 
           echo get('video_vimeo',1,$video); 
           echo "</div></div>"; 
         } 
         else {} 
         } 
        } 
        if ($myimg) { 
         echo "<div class='item".($counter == 0 ? ' active' : '')."'>"; 
         echo '<img src="'; 
         echo $myimg; 
         echo '"/>'; 
         echo "</div>"; 
         $counter++; 

         $videos = get_order_field('video_vimeo'); 
         foreach($videos as $video){ 
          if (get('video_vimeo',TRUE)) { 
           echo "<div class='item black'><div id='video-wrap'>"; 
           echo get('video_vimeo',1,$video); 
           echo "</div></div>"; 
          } 
         } 
        } 
       } 
      } 
      ?> 

Le fond si la déclaration me donne des problèmes:

if ($myimg) { 
        echo "<div class='item".($counter == 0 ? ' active' : '')."'>"; 
        echo '<img src="'; 
        echo $myimg; 
        echo '"/>'; 
        echo "</div>"; 
        $counter++; 

        $videos = get_order_field('video_vimeo'); 
        foreach($videos as $video){ 
         if (get('video_vimeo',TRUE)) { 
          echo "<div class='item black'><div id='video-wrap'>"; 
          echo get('video_vimeo',1,$video); 
          echo "</div></div>"; 
         } 
        } 
       } 

Pour une raison quelconque sa sortie un <div class='item black'> après chaque <div class='item'> alors que je voudrais que ce pour sortir le <div class='item black'> seulement après que tous les <div class='item'> ont été produits.

J'espère que cela a du sens. Si quelqu'un pouvait simplement me pointer dans la bonne direction ce serait génial.

+0

avez-vous essayé de déplacer la boucle 'for'? – Tushar

+0

Je l'ai fait. Peut-être que je ne le déplace pas au bon endroit? – popshuvit

+0

Haha je l'ai déplacé de l'autre pour la boucle et cela a fonctionné! – popshuvit

Répondre

1

Déplacez votre boucle for en dehors de la boucle externe for, ce qui entraîne son exécution à chaque itération.

+0

Haha nm Je l'ai eu! Merci encore pour votre aide! – popshuvit

Questions connexes