Home › Forums › Add-ons › Repeater Field › how to display content based on checkmark choice in repeater entry › Reply To: how to display content based on checkmark choice in repeater entry
Hi @eileen.schmidtke
I made a few changes to the code and some corrections. First the $h1 set to “false” goes before the closing bracket of the if statement so it will apply only in that condition. The first condition checks if the $h1 is “true” AND if there is any $quick_link_column that is set to “yes”. If that condition applies we display the <h1> and the opening of the ul and set the $h1 variable to false, so it applies only once. I removed the following link’s lis code to prevent the first link from showing twice.
Next we check if there is only any $quick_link_column that is set to “yes” and display the links.
Same goes for the pro_resource_download.
Please test with three possible case. If there are only pro_resource_url, if there are only pro_resource_download if there are both.
Please notice that closing should be inside the else condition brackets otherwise it will always through a closing and that’s invalid html markup. I correct it that too.
Hope this helps!
<div class="quick-link-sidebar">
<?php if( have_rows('pro_resource_url') || have_rows('pro_resource_download') ): ?>
<?php
$h1 = true; // add a simple boolean set to true
// loop through the rows of data
while ( have_rows('pro_resource_url') ) : the_row(); ?>
<?php $quick_link_column = get_sub_field('quick_link'); ?>
<?php if ( $h1 && $quick_link_column == "yes" ) { ?>
<h1>Quicklinks</h1>
<ul class="resource-links">
<?php $h1 = false; //now $h1 goes before this "if" condition closing bracket and it's set to false to limit the conditional only to the first link ?>
<?php } ?>
<?php if ( $quick_link_column == "yes" ) { // Continue with all the links ?>
<li class="<?php echo the_sub_field('indy_content'); ?>">
<a href="<?php the_sub_field('pro_url'); ;?>"><?php the_sub_field('pro_resource_url_name'); ?></a>
</li>
<?php } else {
// something else
} ?>
</ul>
<?php endwhile; ?>
<?php wp_reset_postdata(); ?>
<?php // loop through the rows of data
while ( have_rows('pro_resource_download') ) : the_row();
$h1 = true; // add a simple boolean set to true ?>
<?php if ( $h1 && $quick_link_column == "yes" ) { ?>
<h1>Quicklinks</h1>
<ul class="resource-links">
<?php $h1 = false; ?>
<?php } ?>
<?php if ( $quick_link_column == "yes" ) { // Continue with all the links ?>
<li class="<?php echo the_sub_field('indy_content'); ?>">
<a href="<?php the_sub_field('pro_download_link'); ;?>"><?php the_sub_field('pro_download_name'); ?></a>
</li>
<?php } else {
// something else
} ?>
<?php endwhile; ?>
<?php wp_reset_postdata(); ?>
<?php if ($h1) { } else { ?>
</ul>
<?php } ?>
<?php endif; ?>
</div><!-- end Quicklinks Sidebar -->
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users
Helping others is a great way to earn karma, gain badges and help ACF development!
We use cookies to offer you a better browsing experience, analyze site traffic and personalize content. Read about how we use cookies and how you can control them in our Privacy Policy. If you continue to use this site, you consent to our use of cookies.