Înfășurarea fiecăror 2 div-uri într-un rând - buclă foreach

21 iun. 2016, 14:07:07
Vizualizări: 21K
Voturi: -1

Din anumite motive, am o mică problemă cu înfășurarea fiecăror 2 div-uri într-un rând în această buclă foreach...

Ar putea cineva să mă ajute cu acest lucru?

                <?php 
                    $terms = get_terms("aircraft_category"); // obține toate categoriile
                    $count = count($terms); //Numără câți termeni avem

                    if ( $count > 0 ){  //Dacă avem mai mult de 0 termeni
                        foreach ( $terms as $term ) {  //pentru fiecare termen:
                            echo "<div class='col-md-6 category'>";
                            echo "<h3>";
                            echo $term->name;
                            echo "</h3>";
                            echo $term->description;
                            echo "<div class='link'>";
                            echo "<a href=".get_term_link($term).">" . 'Vezi Mai Mult' . "</a>";
                            echo "</div>";
                            echo " </div>\n";

                            //creează un element listă cu slug-ul termenului curent pentru sortare și nume pentru etichetă
                        }
                    } 
                ?>

Am încercat să adaug contoare, dar nu am avut succes...

Orice ajutor ar fi grozav.

Mulțumesc anticipat.

3
Comentarii

Aceasta este PHP simplu, nu specific WordPress. Și am acoperit-o de o mie de ori deja pe site-ul nostru. Te rog folosește funcția noastră de căutare înainte de a pune o întrebare. :)

fuxia fuxia
21 iun. 2016 14:33:04

Bună Toscho - Nu aș spune că asta este în afara subiectului, dar presupun, cum sugerează, ceea ce este în subiect și ce nu, nu este întotdeauna intuitiv... Am avut dificultăți să găsesc un "Răspuns" corect printre miile pe care le-ai menționat, așa că am decis să pun întrebarea.

Andy Simpson Andy Simpson
21 iun. 2016 14:46:37

Ai un array și vrei să creezi ceva diferit în funcție de indexul fiecărui element. Aceasta este doar PHP, nu există nimic specific WordPress în problemă. De unde vine array-ul nu afectează problema sau soluția ei.

fuxia fuxia
21 iun. 2016 14:49:37
Toate răspunsurile la întrebare 1
1

Trebuie să creezi o variabilă cu numărul de iterații și apoi să verifici în funcție de ea, de exemplu:

$num = 1;
foreach ( $terms as $term ) { 
 if($num%2) {
  echo '<div class="something">';
 }

 // alte operații

 if($num %2) {
  echo '</div>';
 }
 $num++
}

Operatorul %2 este partea importantă, acesta verifică dacă numărul este divizibil cu 2

21 iun. 2016 14:16:24
Comentarii

Undeva vei avea un număr impar de termeni, ceea ce înseamnă că vei avea un div deschis, care va strica structura HTML

Pieter Goosen Pieter Goosen
21 iun. 2016 14:45:07