当wp_get_attachment_image为空时显示默认图像

时间:2014-07-11 21:47:40

标签: wordpress image-management

我正在使用wp_get_attachment_image为企业列表中的企业带来徽标。如果没有徽标,我想显示默认图像。

我知道这不起作用并尝试了几种变体:

<?php $businessLogo = wp_get_attachment_image($business['logo']);?>
<?php if(empty ($businessLogo)) { ?>
    <img src="<?php echo esc_url( home_url( '/' ) ); ?>wp-content/themes/child-theme/images/no_image.png" alt="<?php echo $business['name']; ?>" />
<?php } else { echo wp_get_attachment_image($business['logo']) }    ?>

我很感激任何建议

3 个答案:

答案 0 :(得分:1)

wp_get_attachment_image()在失败时返回一个空字符串,请尝试以下操作:

<?php if ( $businessLogo != '' ) { ?>
    <!-- Display your business logo here -->
<?php } else { ?>
    <!-- Display your default image here -->
<?php } ?>

参考:http://codex.wordpress.org/Function_Reference/wp_get_attachment_image

答案 1 :(得分:1)

试试这个:

<?php if ( $businessLogo != '' ) {
    echo wp_get_attachment_image($business['logo']);
} else { ?>
    <img src="<?php echo esc_url( home_url( '/' ) ); ?>wp-content/themes/child-theme/images/no_image.png" alt="<?php echo $business['name']; ?>" />
<?php } ?>

这应该有效,因为如果没有设置,wp_get_attachment_image会返回一个空字符串。

在WordPress Codex上阅读有关wp_get_attachment_image的更多信息。

答案 2 :(得分:0)

也试试这个

我觉得这对你很有帮助

<?php if (isset($businessLogo)) {
    echo wp_get_attachment_image($business['logo']);
} else { ?>
    <img src="<?php echo esc_url( home_url( '/' ) ); ?>wp-content/themes/child-theme/images/no_image.png" alt="<?php echo $business['name']; ?>" />
<?php } ?>
相关问题