web-dev-qa-db-ja.com

カスタムフィールドが空の場合はdivを表示しない

カスタムフィールドが空のときにdivを隠すためのより良い方法を探しています。 divを隠す方法を私は考え出しました、しかし私はかなりの数のカスタムフィールドを持っています、そして私はむしろそれぞれのためにコードを書きたくないです。

(注:私はAdvanced Custom Fieldsプラグインを使用しています。)

そのため、基本的に、その下のフィールドが空の場合はセクションのタイトルを非表示にします。

ありがとう

<div class="section-title">Services for Individuals</div>
    <div class="section-text">
        <?php the_field('services_for_individuals') ?>
    </div>
</div>

    <div class="section-title-business">Services for Businesses</div>    
        <div class="section-text">
            <?php the_field('services_for_businesses') ?>
        </div>
    </div>
</div>
<?php
    $value = get_field( "services_for_businesses" );
    if ( $value ) {
        echo $value;
    } else {
?>

<style type="text/css">
    .section-title-business {
        display:none; } 
</style>

<?php
}    
?>
2
A.Copland

これを試して:

<?php 
     $business_services = get_field( "services_for_businesses" ); 
     //etc...
?>

<div class="section-title">Services for Individuals</div>

    <div class="section-text">
        <?php the_field('services_for_individuals') ?>
    </div>

    <?php if ( $business_services ) : ?>

    <div class="section-title-business">Services for Businesses</div>    
        <div class="section-text">
            <?php echo $business_services; ?>
        </div>
    </div>

    <?php endif; ?>

</div>

表示または非表示にするフィールドが複数ある場合は、必要に応じてコードをさらに抽象化します。

4
userabuser