现有手风琴中的条件PHP if和else语句

时间:2014-07-16 21:42:33

标签: php if-statement wordpress-plugin advanced-custom-fields

我在Wordpress中使用高级自定义字段插件,并且已经管理(PHP知识非常有限)使用他们的转发器字段来创建手风琴。

除了图像字段(company_logo)之外,一切都运行良好。只要用户选择此自定义字段的图像,它就会显示正常但如果他们没有选择图像,我会得到一些奇怪的文字。

使用我当前的代码我正在尝试添加'if'语句,因此如果他们不选择图像,则会显示默认图像。我已经采取了很多变化,但无法让它发挥作用。

有人可以帮助/指出我正确的方向吗?此外,如果有一种方法我可以清理它,因为我似乎使用了很多

<div id="accordion">
<?php if( have_rows('exhibitor') ): ?>              
    <?php while( have_rows('exhibitor') ): the_row(); ?>

        <h4 class="accordion-toggle"><?php the_sub_field('exhibitor_type'); ?></h4>
        <div class="accordion-content"> 

    <?php while( have_rows('table') ): the_row(); ?>
        <div class="exhibitor-single">                    
            <p class="table-field">Table <?php the_sub_field('table_no'); ?></p>           
            <p><?php the_sub_field('company_name'); ?></p>  

            <?php $image = wp_get_attachment_image_src(get_sub_field('company_logo'), 'logo'); ?>
            <img src="<?php echo $image[0]; ?>" alt="<?php echo get_the_title(get_sub_field('company_logo')) ?>" />

            <p><a href="http://<?php the_sub_field('company_website'); ?>" target="blank"><?php the_sub_field('company_website'); ?></a></p>
        </div>
<?php endwhile; ?>

            </div>
<?php endwhile; ?>
<?php endif; ?>
</div> 

1 个答案:

答案 0 :(得分:1)

您应该能够将图像“部分”包装在其中:

<?php
if(get_sub_field('company_logo')) : 
    $image = wp_get_attachment_image_src(get_sub_field('company_logo'), 'logo');
    ?>
    <img src="<?php echo $image[0]; ?>" alt="<?php echo get_the_title(get_sub_field('company_logo')) ?>" />
    <?php
else :
    ?>
    <!-- Your default image here -->
    <img src="" alt="" />
    <?php
endif; ?>