Verwendet mit Wiederholungs-, Gruppen- und flexiblen Inhaltsfeldern, um durch strukturierte Daten zu iterieren.
have_rows( $selector, $post_id ) / the_row()
Parameter:
| Parameter | Typ | Standard | Beschreibung | ||
|---|---|---|---|---|---|
$selector | string | — | Wiederholungs-, Gruppen- oder flexibles Inhaltsfeldname | ||
$post_id | int\ | string\ | false | false | Post-ID, 'options' oder false für den aktuellen Beitrag |
bool — true, wenn Zeilen vorhanden sind und es weitere Zeilen zum Iterieren gibt.
php
// Basic repeater loop
if ( have_rows( 'team_members' ) ) :
while ( have_rows( 'team_members' ) ) : the_row();
$name = get_sub_field( 'name' );
$photo = get_sub_field( 'photo' );
echo '<div class="team-member">';
echo '<h3>' . esc_html( $name ) . '</h3>';
if ( $photo ) {
echo '<img src="' . esc_url( $photo ) . '" alt="">';
}
echo '</div>';
endwhile;
endif;
// Repeater from a specific post
if ( have_rows( 'pricing_tiers', 99 ) ) :
while ( have_rows( 'pricing_tiers', 99 ) ) : the_row();
echo '<div class="tier">';
echo '<h3>' . esc_html( get_sub_field( 'plan_name' ) ) . '</h3>';
echo '<p class="price">$' . esc_html( get_sub_field( 'price' ) ) . '/mo</p>';
echo '</div>';
endwhile;
endif;
// Repeater from options page
if ( have_rows( 'announcement_bar', 'options' ) ) :
while ( have_rows( 'announcement_bar', 'options' ) ) : the_row();
echo '<div class="announcement">' . esc_html( get_sub_field( 'message' ) ) . '</div>';
endwhile;
endif;—