Antworten auf deine Fragen:
Neues Thema erstellen

Anzahl ausgegebener Posts zählen

Sargas

Mod | Forum

Teammitglied
PSD Beta Team
Hi Leute,

ich hänge da an einer Kleinigkeit und zwar habe ich mir einen kleinen Baustein in Wordpress mit Advanced Custom Fields gebastelt. Hier kann ich zwischen 2 und 6 Blöcke anlegen, die dann ausgegeben werden. Jetzt möchte ich gerne per PHP zählen wie viele Blöcke ausgegeben wurden, um diese Zahl an eine CSS-Klasse anzuhängen, damit am Ende das entsprechende Layout genutzt wird (zweispaltig oder dreispaltig).

Was gut klappt ist die Blöcke durchnummerieren, leider würde ich die Zahl gerne an eine Klasse im umschließenden DIV (class="summary-blocks-...") anhängen und das bekomme ich nicht hin. Aktuell habe ich ein extra Feld in das ich die Anzahl im Backend nochmal extra eingebe, schöner wäre es automatisch.

So sieht der Quelltext aus, die $sum_i Variable wurde in der index.php definiert, falls sich jemand wundert wo die abgeblieben ist hier.

PHP:
<div class="summary-blocks summary-blocks-<?php the_sub_field('summary_blocks'); ?>">
        <?php
            if( have_rows('summary_block') ):
                while ( have_rows('summary_block') ) : the_row();
                global $sum_i;
                $sum_i++;
            ?>
                    <div class="summary-block summary-block-<?php echo $sum_i;?>">
                        <?php
                            if  (get_sub_field('summary_fa_boole'))  { ?>
                                <i class="fa fa-<?php the_sub_field('summary_fa'); ?> fa-4x" aria-hidden="true"></i>
                            <?php }else{ ?>
                                <img src="<?php the_sub_field('summary_icon_img'); ?>" class="summary-img">
                           <?php } ?>
                        <h4><?php the_sub_field('summary_block_title'); ?></h4>
                        <?php the_sub_field('summary_block_content'); ?>
                    </div>
                <?php endwhile;
            endif;
        ?>
        </div>

Jemand eine Idee? Kann auch gerne ganz anders gelöst werden, hauptsache es wählt automatisch das passende Layouts für die Anzahl der Blöcke.
 

Mediaoase

Kellerkind und Pixelschubser

Hallo Sargas,

zu meinem Verständnis:
  • Die Variable $sum_i nummeriert die inneren Blöcke durch richtig?
  • Die Anzahl der Werte $sum_i definiert also die Anzahl der Blöcke?
Ich weiß ja nicht genau wie die Blöcke durchnummeriert werden, aber da die min und max Anzahl ja bekannt ist, könntest du z.B. die Schleifendurchläufe zählen.
PHP:
<?php
$array = array(2,3,4,5,6);
$summary_blocks = 0;
foreach($array as $key => $check)
{
    if($check > 1)
    {
        echo $check.',';
        $summary_blocks++;
    }
}
echo "<br/>"."Anzahl Blöcke = ".$summary_blocks;
?>
 

Sargas

Mod | Forum

Teammitglied
PSD Beta Team
Das muss ich mal ausprobieren, danke :)

Ich hatte irgendwie gehofft, dass ich mein $sum_i nach dem while irgendwie "nach oben" bringen kann, Aber da wird sie natürlich als 0 ausgegeben.

Da werde ich wohl um eine extra Schleife nicht drumrum kommen.
 

Mediaoase

Kellerkind und Pixelschubser

Hmm, das Problem ist ja, das du den Code ausgeben möchtest, zu einem Zeitpunkt wo dieser noch nicht bekannt ist, da die Schleife ja noch gar nicht durchlaufen ist.

Ich bin der Meinung du solltest erst die Schleife durchlaufen, welche die Nummerierung definiert, ohne eine Ausgabe zu machen. Dann kannst du das Ergebnis des counters im äußersten Div ausgeben.
 

m_c

Nicht mehr ganz neu hier

Dann schiebt man die Daten eben in eine Variable und schreibt diese dann am Ende. Dann kann man auch das Design so anpassen.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.611
Beiträge
1.538.341
Mitglieder
67.524
Neuestes Mitglied
BSKGA
Oben