How to hide div container if ACF fields are empty

2k Views Asked by At

I have this code to display custom ACF fields on a page. When the subfields are empty, i would like to hide the div containers (class= price-container and ikon-container) completely, as it takes space in the column for another div container which is supposed to fill out the space instead.

How to solve this? Thanks

<?php if ( have_rows( 'menuer_layout') ) : ?>
            
        
                        <div class="col-sm-12 col-md-12 col-lg-4" style="padding:0">
                                <div class="sticky-top">
                                    <div class="price-container">

                                                <div id="pricebox-content" class="slick-slide-pricebox">
                                                    <div class="pricebox-container">
                                                        <div class="pricebox-top">
                                                            <h4 class="pricebox-header">One</br>Two</h3>
                                                            <span class="price-subtitle">Here goes..</span>
                                                        </div>
                                                    
                        
                                                                    
                                                        <?php while ( have_rows( 'menuer_layout' ) ) : the_row(); ?>
                                                            <div class="menucard-container">
                                                                <h5 style="margin:0"><?php the_sub_field( 'menu_overskrift' ); ?></h5>
                                                                <span><?php the_sub_field( 'menu_tekst' ); ?></span>
                                                                <?php $menu_knap_url = get_sub_field( 'menu_knap_url' ); ?>                                                         
                                                                    <?php if ( $menu_knap_url ) { ?>
                                                                        <div class="pricebox-link-container" style="padding-top: 5px">
                                                                            <a class="knap-2" href="<?php echo $menu_knap_url['url']; ?>" target="<?php echo $menu_knap_url['target']; ?>"><?php the_sub_field( 'menu_knap_tekst' ); ?></a>
                                                                        </div>
                                                                    <?php } ?>
                                                            </div>
                                                        <?php endwhile; ?>
                                                                <?php else : ?>
                                                                    <?php // no rows found ?>
                                                    
                                                    
                                                                <?php endif; ?>
                                                        
                                                    </div>
                                                </div>

                            </div>
                            
                            
            
            

                            <?php $hotel_ikoner_images = get_field( 'hotel_ikoner', 'option' ); ?>
                                <?php if ( $hotel_ikoner_images ) :  ?>
                            
                            
                                    <div class="ikon-container">
                                        <ul class="ikon-liste">
                                    <?php foreach ( $hotel_ikoner_images as $hotel_ikoner_image ): ?>
                                        <li class="hotel-ikon-spec">
                                            <img class="hotel-ikon-small" src="<?php echo esc_url( $hotel_ikoner_image['sizes']['thumbnail'] ); ?>" alt="<?php echo esc_attr( $hotel_ikoner_image['alt'] ); ?>" /> <span class="hotel-ikon-text"><?php echo esc_html( $hotel_ikoner_image['caption'] ); ?></span>
                                    </li>
                                    <?php endforeach; ?>
                                        </ul>
                                    </div>
                                <?php endif; ?>
                        </div>
                    </div>
        </div>
    </div>
</section>
1

There are 1 best solutions below

0
On

You Can Use get_sub_field https://www.advancedcustomfields.com/resources/get_sub_field/

    <?php if(!get_sub_field('field_name')){ ?>

        <div>
         Hide This Content If Field Empty
        </div>

    <?php } ?>