Raggruppa ogni 2 div in una riga - ciclo foreach

21 giu 2016, 14:07:07
Visualizzazioni: 21K
Voti: -1

Per qualche motivo, sto avendo difficoltà a raggruppare ogni 2 div in una riga in questo ciclo foreach....

Qualcuno potrebbe fare un po' di luce su questo?

                <?php 
                    $terms = get_terms("aircraft_category"); // ottieni tutte le categorie
                    $count = count($terms); //Conta quanti termini abbiamo

                    if ( $count > 0 ){  //Se ci sono più di 0 termini
                        foreach ( $terms as $term ) {  //per ogni termine:
                            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).">" . 'Vedi altro' . "</a>";
                            echo "</div>";
                            echo " </div>\n";

                            //crea un elemento della lista con lo slug del termine corrente per l'ordinamento e il nome per l'etichetta
                        }
                    } 
                ?>

Ho provato ad aggiungere contatori, ma senza successo...

Qualsiasi aiuto sarebbe apprezzato.

Grazie in anticipo.

3
Commenti

Questo è PHP semplice, non specifico di WordPress. E l'abbiamo già trattato mille volte sul nostro sito. Per favore usa la nostra ottima funzione di ricerca prima di fare una domanda. :)

fuxia fuxia
21 giu 2016 14:33:04

Ciao Toscho - Non direi che sia fuori tema, ma suppongo, come suggerisce, che ciò che è in tema o fuori tema non sia sempre intuitivo... Ho avuto difficoltà a trovare una 'Risposta' corretta tra le migliaia che hai menzionato, quindi ho deciso di fare la domanda.

Andy Simpson Andy Simpson
21 giu 2016 14:46:37

Hai un array e vuoi creare qualcosa di diverso in base all'indice di ogni elemento. Questo è solo PHP, non c'è WordPress nel problema. Da dove proviene l'array non influisce sul problema o sulla sua soluzione.

fuxia fuxia
21 giu 2016 14:49:37
Tutte le risposte alla domanda 1
1

Devi creare una variabile con il conteggio e poi verificarla, ad esempio:

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

 // altre operazioni

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

L'operatore %2 è la parte che ti serve, verifica se il numero è divisibile per 2

21 giu 2016 14:16:24
Commenti

Da qualche parte avrai un numero dispari di termini, il che significa che avrai un div aperto, che romperà il tuo html

Pieter Goosen Pieter Goosen
21 giu 2016 14:45:07